New file |
0,0 → 1,127 |
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); |
/** |
* CodeIgniter |
* |
* An open source application development framework for PHP 4.3.2 or newer |
* |
* @package CodeIgniter |
* @author ExpressionEngine Dev Team |
* @copyright Copyright (c) 2008, EllisLab, Inc. |
* @license http://codeigniter.com/user_guide/license.html |
* @link http://codeigniter.com |
* @since Version 1.0 |
* @filesource |
*/ |
|
// ------------------------------------------------------------------------ |
|
/** |
* CodeIgniter Application Controller Class |
* |
* This class object is the super class the every library in |
* CodeIgniter will be assigned to. |
* |
* @package CodeIgniter |
* @subpackage Libraries |
* @category Libraries |
* @author ExpressionEngine Dev Team |
* @link http://codeigniter.com/user_guide/general/controllers.html |
*/ |
class Controller extends CI_Base { |
|
var $_ci_scaffolding = FALSE; |
var $_ci_scaff_table = FALSE; |
|
/** |
* Constructor |
* |
* Calls the initialize() function |
*/ |
function Controller() |
{ |
parent::CI_Base(); |
$this->_ci_initialize(); |
log_message('debug', "Controller Class Initialized"); |
} |
|
// -------------------------------------------------------------------- |
|
/** |
* Initialize |
* |
* Assigns all the bases classes loaded by the front controller to |
* variables in this class. Also calls the autoload routine. |
* |
* @access private |
* @return void |
*/ |
function _ci_initialize() |
{ |
// Assign all the class objects that were instantiated by the |
// front controller to local class variables so that CI can be |
// run as one big super object. |
$classes = array( |
'config' => 'Config', |
'input' => 'Input', |
'benchmark' => 'Benchmark', |
'uri' => 'URI', |
'output' => 'Output', |
'lang' => 'Language', |
'router' => 'Router' |
); |
|
foreach ($classes as $var => $class) |
{ |
$this->$var =& load_class($class); |
} |
|
// In PHP 5 the Loader class is run as a discreet |
// class. In PHP 4 it extends the Controller |
if (floor(phpversion()) >= 5) |
{ |
$this->load =& load_class('Loader'); |
$this->load->_ci_autoloader(); |
} |
else |
{ |
$this->_ci_autoloader(); |
|
// sync up the objects since PHP4 was working from a copy |
foreach (array_keys(get_object_vars($this)) as $attribute) |
{ |
if (is_object($this->$attribute)) |
{ |
$this->load->$attribute =& $this->$attribute; |
} |
} |
} |
} |
|
// -------------------------------------------------------------------- |
|
/** |
* Run Scaffolding |
* |
* @access private |
* @return void |
*/ |
function _ci_scaffolding() |
{ |
if ($this->_ci_scaffolding === FALSE OR $this->_ci_scaff_table === FALSE) |
{ |
show_404('Scaffolding unavailable'); |
} |
|
$method = ( ! in_array($this->uri->segment(3), array('add', 'insert', 'edit', 'update', 'view', 'delete', 'do_delete'), TRUE)) ? 'view' : $this->uri->segment(3); |
|
require_once(BASEPATH.'scaffolding/Scaffolding'.EXT); |
$scaff = new Scaffolding($this->_ci_scaff_table); |
$scaff->$method(); |
} |
|
|
} |
// END _Controller class |
|
/* End of file Controller.php */ |
/* Location: ./system/libraries/Controller.php */ |