134 lines
4.3 KiB
PHP
134 lines
4.3 KiB
PHP
<?php defined('SYSPATH') or die('No direct script access.');
|
|
|
|
//-- Environment setup --------------------------------------------------------
|
|
|
|
/**
|
|
* Set the default time zone.
|
|
*
|
|
* @see http://kohanaframework.org/guide/using.configuration
|
|
* @see http://php.net/timezones
|
|
*/
|
|
date_default_timezone_set('Australia/Melbourne');
|
|
|
|
/**
|
|
* 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' => '/osb',
|
|
'index_file' => '',
|
|
));
|
|
|
|
/**
|
|
* 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' => SMDPATH.'auth', // Basic authentication
|
|
'cache' => SMDPATH.'cache', // Caching with multiple backends
|
|
// 'codebench' => SMDPATH.'codebench', // Benchmarking tool
|
|
'database' => SMDPATH.'database', // Database access
|
|
// 'image' => SMDPATH.'image', // Image manipulation
|
|
'orm' => SMDPATH.'orm', // Object Relationship Mapping
|
|
// 'oauth' => SMDPATH.'oauth', // OAuth authentication
|
|
// 'pagination' => SMDPATH.'pagination', // Paging of results
|
|
// 'unittest' => SMDPATH.'unittest', // Unit testing
|
|
// 'userguide' => SMDPATH.'userguide', // User guide and API documentation
|
|
'xml' => SMDPATH.'xml', // XML module for Kohana 3 PHP Framework
|
|
'email' => SMDPATH.'email', // Email module for Kohana 3 PHP Framework
|
|
'gchart' => MODPATH.'gchart', // Google Chart Module
|
|
));
|
|
|
|
/**
|
|
* Load our modules defined in the DB
|
|
*/
|
|
Kohana::modules(array_merge(Kohana::modules(),Config::appmodules()));
|
|
|
|
/**
|
|
* Enable admin, user (account), reseller and affiliate interfaces
|
|
*/
|
|
Route::set('sections', '<directory>/<controller>(/<action>(/<id>(/<sid>)))',
|
|
array(
|
|
'directory' => '('.implode('|',Kohana::config('config.method_directory')).')' //(account|admin|affiliate|reseller|task)'
|
|
));
|
|
|
|
/**
|
|
* 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',
|
|
));
|
|
|
|
// Static file serving (CSS, JS, images)
|
|
Route::set('default/media', 'media(/<file>)', array('file' => '.+'))
|
|
->defaults(array(
|
|
'controller' => 'welcome',
|
|
'action' => 'media',
|
|
'file' => NULL,
|
|
));
|
|
|
|
// Make sure their PHP version is current enough
|
|
if (strcmp(phpversion(),'5.3') < 0) {
|
|
echo 'This application requires PHP 5.3 or newer to run';
|
|
die();
|
|
}
|
|
|
|
if ( ! defined('SUPPRESS_REQUEST'))
|
|
{
|
|
/**
|
|
* Execute the main request. A source of the URI can be passed, eg: $_SERVER['PATH_INFO'].
|
|
* If no source is specified, the URI will be automatically detected.
|
|
*/
|
|
echo Request::instance()
|
|
->execute()
|
|
->send_headers()
|
|
->response;
|
|
}
|