184 lines
5.7 KiB
PHP
184 lines
5.7 KiB
PHP
|
<?php
|
||
|
|
||
|
/**
|
||
|
* The directory in which your application specific resources are located.
|
||
|
* The application directory must contain the bootstrap.php file.
|
||
|
*
|
||
|
* @see http://kohanaframework.org/guide/about.install#application
|
||
|
*/
|
||
|
$application = '../application';
|
||
|
|
||
|
/**
|
||
|
* The directory in which your modules are located.
|
||
|
*
|
||
|
* @see http://kohanaframework.org/guide/about.install#modules
|
||
|
*/
|
||
|
$modules = '../modules';
|
||
|
|
||
|
/**
|
||
|
* The directory in which the Kohana resources are located. The system
|
||
|
* directory must contain the classes/kohana.php file.
|
||
|
*
|
||
|
* @see http://kohanaframework.org/guide/about.install#system
|
||
|
*/
|
||
|
$system = '../system';
|
||
|
|
||
|
/**
|
||
|
* The default extension of resource files. If you change this, all resources
|
||
|
* must be renamed to use the new extension.
|
||
|
*
|
||
|
* @see http://kohanaframework.org/guide/about.install#ext
|
||
|
*/
|
||
|
define('EXT', '.php');
|
||
|
|
||
|
/**
|
||
|
* Set the PHP error reporting level. If you set this in php.ini, you remove this.
|
||
|
* @see http://php.net/error_reporting
|
||
|
*
|
||
|
* When developing your application, it is highly recommended to enable notices
|
||
|
* and strict warnings. Enable them by using: E_ALL | E_STRICT
|
||
|
*
|
||
|
* In a production environment, it is safe to ignore notices and strict warnings.
|
||
|
* Disable them by using: E_ALL ^ E_NOTICE
|
||
|
*
|
||
|
* When using a legacy application with PHP >= 5.3, it is recommended to disable
|
||
|
* deprecated notices. Disable with: E_ALL & ~E_DEPRECATED
|
||
|
*/
|
||
|
error_reporting(E_ALL | E_STRICT);
|
||
|
|
||
|
/**
|
||
|
* End of standard configuration! Changing any of the code below should only be
|
||
|
* attempted by those with a working knowledge of Kohana internals.
|
||
|
*
|
||
|
* @see http://kohanaframework.org/guide/using.configuration
|
||
|
*/
|
||
|
|
||
|
// Set the full path to the docroot
|
||
|
define('DOCROOT', realpath(dirname(__FILE__)).DIRECTORY_SEPARATOR);
|
||
|
|
||
|
// Make the application relative to the docroot
|
||
|
if ( ! is_dir($application) AND is_dir(DOCROOT.$application))
|
||
|
$application = DOCROOT.$application;
|
||
|
|
||
|
// Make the modules relative to the docroot
|
||
|
if ( ! is_dir($modules) AND is_dir(DOCROOT.$modules))
|
||
|
$modules = DOCROOT.$modules;
|
||
|
|
||
|
// Make the system relative to the docroot
|
||
|
if ( ! is_dir($system) AND is_dir(DOCROOT.$system))
|
||
|
$system = DOCROOT.$system;
|
||
|
|
||
|
// Define the absolute paths for configured directories
|
||
|
define('APPPATH', realpath($application).DIRECTORY_SEPARATOR);
|
||
|
define('MODPATH', realpath($modules).DIRECTORY_SEPARATOR);
|
||
|
define('SYSPATH', realpath($system).DIRECTORY_SEPARATOR);
|
||
|
|
||
|
// Clean up the configuration vars
|
||
|
unset($application, $modules, $system);
|
||
|
|
||
|
// Load the base, low-level functions
|
||
|
require SYSPATH.'base'.EXT;
|
||
|
|
||
|
// Load the core Kohana class
|
||
|
require SYSPATH.'classes/kohana/core'.EXT;
|
||
|
|
||
|
if (is_file(APPPATH.'classes/kohana'.EXT))
|
||
|
{
|
||
|
// Application extends the core
|
||
|
require APPPATH.'classes/kohana'.EXT;
|
||
|
}
|
||
|
else
|
||
|
{
|
||
|
// Load empty core extension
|
||
|
require SYSPATH.'classes/kohana'.EXT;
|
||
|
}
|
||
|
|
||
|
//-- Environment setup --------------------------------------------------------
|
||
|
|
||
|
/**
|
||
|
* Set the default time zone.
|
||
|
*
|
||
|
* @see http://kohanaframework.org/guide/using.configuration
|
||
|
* @see http://php.net/timezones
|
||
|
*/
|
||
|
date_default_timezone_set('America/Chicago');
|
||
|
|
||
|
/**
|
||
|
* Set the default locale.
|
||
|
*
|
||
|
* @see http://kohanaframework.org/guide/using.configuration
|
||
|
* @see http://php.net/setlocale
|
||
|
*/
|
||
|
setlocale(LC_ALL, 'en_US.utf-8');
|
||
|
|
||
|
/**
|
||
|
* Enable the Kohana auto-loader.
|
||
|
*
|
||
|
* @see http://kohanaframework.org/guide/using.autoloading
|
||
|
* @see http://php.net/spl_autoload_register
|
||
|
*/
|
||
|
spl_autoload_register(array('Kohana', 'auto_load'));
|
||
|
|
||
|
/**
|
||
|
* Enable the Kohana auto-loader for unserialization.
|
||
|
*
|
||
|
* @see http://php.net/spl_autoload_call
|
||
|
* @see http://php.net/manual/var.configuration.php#unserialize-callback-func
|
||
|
*/
|
||
|
ini_set('unserialize_callback_func', 'spl_autoload_call');
|
||
|
|
||
|
//-- Configuration and initialization -----------------------------------------
|
||
|
|
||
|
/**
|
||
|
* Initialize Kohana, setting the default options.
|
||
|
*
|
||
|
* The following options are available:
|
||
|
*
|
||
|
* - string base_url path, and optionally domain, of your application NULL
|
||
|
* - string index_file name of your index file, usually "index.php" index.php
|
||
|
* - string charset internal character set used for input and output utf-8
|
||
|
* - string cache_dir set the internal cache directory APPPATH/cache
|
||
|
* - boolean errors enable or disable error handling TRUE
|
||
|
* - boolean profile enable or disable internal profiling TRUE
|
||
|
* - boolean caching enable or disable internal caching FALSE
|
||
|
*/
|
||
|
Kohana::init(array(
|
||
|
'base_url' => '/',
|
||
|
));
|
||
|
|
||
|
/**
|
||
|
* Attach the file write to logging. Multiple writers are supported.
|
||
|
*/
|
||
|
Kohana::$log->attach(new Kohana_Log_File(APPPATH.'logs'));
|
||
|
|
||
|
/**
|
||
|
* Attach a file reader to config. Multiple readers are supported.
|
||
|
*/
|
||
|
Kohana::$config->attach(new Kohana_Config_File);
|
||
|
|
||
|
/**
|
||
|
* Enable modules. Modules are referenced by a relative or absolute path.
|
||
|
*/
|
||
|
Kohana::modules(array(
|
||
|
// 'auth' => MODPATH.'auth', // Basic authentication
|
||
|
// 'cache' => MODPATH.'cache', // Caching with multiple backends
|
||
|
// 'codebench' => MODPATH.'codebench', // Benchmarking tool
|
||
|
// 'database' => MODPATH.'database', // Database access
|
||
|
// 'image' => MODPATH.'image', // Image manipulation
|
||
|
// 'orm' => MODPATH.'orm', // Object Relationship Mapping
|
||
|
// 'oauth' => MODPATH.'oauth', // OAuth authentication
|
||
|
// 'pagination' => MODPATH.'pagination', // Paging of results
|
||
|
'unittest' => MODPATH.'unittest', // Unit testing
|
||
|
// 'userguide' => MODPATH.'userguide', // User guide and API documentation
|
||
|
));
|
||
|
|
||
|
/**
|
||
|
* Set the routes. Each route must have a minimum of a name, a URI and a set of
|
||
|
* defaults for the URI.
|
||
|
*/
|
||
|
Route::set('default', '(<controller>(/<action>(/<id>)))')
|
||
|
->defaults(array(
|
||
|
'controller' => 'welcome',
|
||
|
'action' => 'index',
|
||
|
));
|