mirror of
https://github.com/Pathduck/gallery3.git
synced 2026-05-20 03:19:13 -04:00
Rename 'kohana' to 'system' to conform to the Kohana filesystem layout. I'm comfortable with us not clearly drawing the distinction about the fact that it's Kohana.
This commit is contained in:
78
system/libraries/Controller.php
Normal file
78
system/libraries/Controller.php
Normal file
@@ -0,0 +1,78 @@
|
||||
<?php defined('SYSPATH') OR die('No direct access allowed.');
|
||||
/**
|
||||
* Kohana Controller class. The controller class must be extended to work
|
||||
* properly, so this class is defined as abstract.
|
||||
*
|
||||
* $Id: Controller.php 3979 2009-02-13 16:46:12Z zombor $
|
||||
*
|
||||
* @package Core
|
||||
* @author Kohana Team
|
||||
* @copyright (c) 2007-2008 Kohana Team
|
||||
* @license http://kohanaphp.com/license.html
|
||||
*/
|
||||
abstract class Controller_Core {
|
||||
|
||||
// Allow all controllers to run in production by default
|
||||
const ALLOW_PRODUCTION = TRUE;
|
||||
|
||||
/**
|
||||
* Loads URI, and Input into this controller.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
if (Kohana::$instance == NULL)
|
||||
{
|
||||
// Set the instance to the first controller loaded
|
||||
Kohana::$instance = $this;
|
||||
}
|
||||
|
||||
// URI should always be available
|
||||
$this->uri = URI::instance();
|
||||
|
||||
// Input should always be available
|
||||
$this->input = Input::instance();
|
||||
}
|
||||
|
||||
/**
|
||||
* Handles methods that do not exist.
|
||||
*
|
||||
* @param string method name
|
||||
* @param array arguments
|
||||
* @return void
|
||||
*/
|
||||
public function __call($method, $args)
|
||||
{
|
||||
// Default to showing a 404 page
|
||||
Event::run('system.404');
|
||||
}
|
||||
|
||||
/**
|
||||
* Includes a View within the controller scope.
|
||||
*
|
||||
* @param string view filename
|
||||
* @param array array of view variables
|
||||
* @return string
|
||||
*/
|
||||
public function _kohana_load_view($kohana_view_filename, $kohana_input_data)
|
||||
{
|
||||
if ($kohana_view_filename == '')
|
||||
return;
|
||||
|
||||
// Buffering on
|
||||
ob_start();
|
||||
|
||||
// Import the view variables to local namespace
|
||||
extract($kohana_input_data, EXTR_SKIP);
|
||||
|
||||
// Views are straight HTML pages with embedded PHP, so importing them
|
||||
// this way insures that $this can be accessed as if the user was in
|
||||
// the controller, which gives the easiest access to libraries in views
|
||||
include $kohana_view_filename;
|
||||
|
||||
// Fetch the output and close the buffer
|
||||
return ob_get_clean();
|
||||
}
|
||||
|
||||
} // End Controller Class
|
||||
Reference in New Issue
Block a user