<?php
/* File name : starter.php
* Created by : Junaid Hassan (email : junaidhassanalvi@gmail.com , blog : junaidhassanalvi.wordpress.com)
* Created On : 14-April-2103
* Description : It is trigger to start process for website.
*
* Change Logs : 15-April -- add url class object to catalog
* 16-April -- add database and other classes objects to catalog
*
*/
//jha-- load configuration from config.xml and append some php configuration
include('configuration.php');
$configuration = new Configuration();
//jha-- load classes and helper required by the applicaiton
$configuration->preload();
//jha-- catalog is going to have all assets of the website and provide them in inherited controller
$catalog = new Catalog();
$catalog->set('configuration', $configuration);
$catalog->set('config', $configuration->config);
//jha-- create utilities object and assign to catalog
$utilities = new Utilities($catalog);
$catalog->set('utilities', $utilities);
//jha-- create utilities object and assign to catalog
$url = new Url($catalog);
$catalog->set('url', $url);
//jha-- parse url to find out controller and action, to route request to appropriate controller and action
$url->parse_current();
//jha-- create loader object and assign to catalog
$loader = new Loader($catalog);
$catalog->set('loader', $loader);
//jha-- create database object and assign to catalog
$database = new Database($catalog);
$catalog->set('database', $database);
//jha-- create object of required controller and assign catalog
$obj = new $url->controller_class($catalog);
if (is_array($url->qParams))
if (count($url->qParams) > 0)
$parms = $url->qParams;
else
$parms = array();
else
$parms = array();
//jha-- call appropriate method from appropriate class by appropriate passing parameters
call_user_func_array(array($obj, $url->controller_action), $parms);
?>
|