PHP Classes
elePHPant
Icontem

File: AzizMVC/mainController.php

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  Classes of Aziz S. Hussain  >  Aziz MVC  >  AzizMVC/mainController.php  >  Download  
File: AzizMVC/mainController.php
Role: Class source
Content type: text/plain
Description: Main Controller
Class: Aziz MVC
Framework that uses MVC design pattern
Author: By
Last change: Fixed Minor Bugs
Date: 4 years ago
Size: 3,524 bytes
 

Contents

Class file image Download
<?php
if(!defined('BASEPATH')){ die();}

/*

File Name: mainController.php

Class:
------
class mainController extends load (from /AzizMVC/load.php)

Description:
------------
This class gets extended by every controller, which inherently extends the loader

Variables:
----------
protected params = string array() --> List of URL paramaters
public model = string --> Default model handler

Methods:
--------
void __construct --> Construct paramters, paths & helper/plugin autoload
string segments(index as int) --> Returns the selected paramters index

string getPost(input as string, doClean as boolean = true)
                                    --> Returns a POST value and cleans it by default
string getGet(input as string, doClean as boolean = true)
                                    --> Returns a GET value and cleans it by default

string cleanMe(input as string, doClean as boolean = true)
                                    --> Returns input or cleans it before returning it.
string escape(input as string) --> Similar to mysql_real_escape_string, but additional it urlencodes equal signs

*/

class mainController extends load
{
   
// Paramters holder
   
protected $params = array();
   
   
// Default Model handler
   
public $model = NULL;
   
   
// Base Path
   
public $BASEPATH;
   
   
// Site URL
   
public $site_url;
   
   
// Base URL
   
public $base_url;
   
   
// Construct paths
   
public function __construct()
    {
       
// Set BASEPATH
       
$this->BASEPATH = BASEPATH;

       
// Set params
       
if(isset($_SERVER['REQUEST_URI']))
        {
           
$this->params = explode('/',$_SERVER['REQUEST_URI']);
           
$this->params = checkIndex($this->params);
        }
       
       
// Site/base URL
       
$temp = basename($_SERVER['SCRIPT_NAME']);
       
$this->base_url = 'http://'.$_SERVER['HTTP_HOST'].str_replace($temp,'',$_SERVER['SCRIPT_NAME']);
       
$this->site_url = $this->base_url.'index.php/';
       
       
// Include database oonfigurations
       
include(BASEPATH.'AzizMVC/configs.php');
       
       
// Load all plugins on autoload
       
if(count($MVC_Configs['pluginAuto']) > 0)
        {
            foreach(
$MVC_Configs['pluginAuto'] as $plugin)
            {
               
$this->loadPlugin($plugin);
            }
        }
       
// Load all helpers on autoload
       
if(count($MVC_Configs['helperAuto']) > 0)
        {
            foreach(
$MVC_Configs['helperAuto'] as $helper)
            {
               
$this->loadHelper($helper);
            }
        }
    }
   
   
// Function used to retrieve paramater
   
public function segments($index,$doClean = true)
    {
       
settype($index,"integer");
        if(isset(
$this->params[$index])){
            return
$this->cleanMe($this->params[$index],$doClean);
        } else {
            return
'';
        }
    }
   
   
// Function to get clean post variables
   
public function getPost($input,$doClean = true)
    {
        if(isset(
$_POST[$input]))
        {
            return
$this->cleanMe($_POST[$input],$doClean);
        } else {
            return
'';
        }
    }
   
   
// Function to get clean get variables
   
public function getGet($input,$doClean = true)
    {
        if(isset(
$_GET[$input]))
        {
            return
$this->cleanMe($_GET[$input],$doClean);
        } else {
            return
'';
        }
    }
   
   
/* This function will return input or clean it before doing so */
   
private function cleanMe($input,$doClean)
    {
        if(!
$doClean){ return $input;}
        return
$this->escape($input);
    }
   
   
// MySQL escape function
   
public function escape($string)
    {
       
$search = array("\x00", "\n", "\r", '\\', "'", '"', "\x1a",'=');
       
$replace = array("\\x00", "\\n", "\\r", "\\\\" ,"\'", '\"', "\\x1a",'%3D');
        return
str_replace($search,$replace,$string);
    }
}

// End of file /AzizMVC/mainController.php