Esempio n. 1
0
<?php

/**
 * orchid bootstrap file. used internally to process request and dispatch
 * with the help of router and dispatcher.
 * 
 * @author 		Hasin Hayder [http://hasin.wordpress.com]
 * @copyright 	New BSD License
 * @version 	0.1	
 */
include "core/ini.php";
initializer::initialize();
$router = loader::load("router");
dispatcher::dispatch($router);
 /**
  *	initialize required objects 
  */
 public function init()
 {
     $this->config = Registry::getInstance()->config = ApplicationConfig::getInstance();
     $request = Registry::getInstance()->request = new Request();
     $this->setAppName($this->config->appName);
     $this->setRouter(Router::getInstance())->setRequest($request)->setRawRoute()->setDefaultModule('site')->setDefaultController('site')->setDefaultAction('index')->setBasePath(dirname(dirname(dirname(__FILE__))))->setModule()->setController()->setAction();
     // load module (modules which are in extension folders ) configuration
     ModuleManager::getInstance()->loadModuleConfig();
     //set application configurations config.ini
     // Load system configuration system.xml
     $this->config->setConfigFile($this->getConfigFile())->setSystemConfigFile($this->getSystemConfigFile())->loadConfiguration();
     // load the userspace bootstrap class and run init method
     $initialize = Registry::getInstance()->request->getBasePath() . DS . Registry::getInstance()->config->appDir . DS . 'initializer.php';
     if (file_exists($initialize)) {
         $initializer = new \initializer();
         $initializer->init();
     }
     // Module specific configuration file <module>.xml
     ModuleConfig::getInstance()->loadConfiguration();
     // load plugin configurations
     PluginManager::getInstance()->loadPluginConfig();
     // load plugins
     PluginManager::getInstance()->loadPlugins();
     $this->exception = new EasyException(null);
     return $this;
 }