Beispiel #1
0
 function dispatch()
 {
     require_once 'framework.php';
     try {
         session_start();
         Framework::boot();
         Framework::$controller = new Controller();
         Framework::$controller->process_route();
     } catch (Exception $e) {
         Framework::$controller->process_exception($e);
     }
 }
Beispiel #2
0
 /**
  * 执行程序入口
  *
  * @param $page array 默认设置,里面传入两个选项 一个 $platform,一个controller,用来控制平台和控制器,默认front
  */
 public static function run($page = array())
 {
     self::$platform = self::getNullReplace($page['platform'], 'front');
     self::$controller = self::getNullReplace($page['controller'], 'front');
     /**
      * 注册自动加载方法
      */
     spl_autoload_register(array('Framework', 'autoLoad'));
     self::loadSafeSql();
     self::initRequest();
     self::initPath();
     self::loadConfig();
     self::initTimezone();
     self::initErrorHandler();
     self::dispatch();
 }
Beispiel #3
0
 /**
  * Start up the framework
  *
  * @access      public
  * @param       string      $site       The site to load
  * @param       string      $controller Which controller to use
  * @return      boolean     True on success
  * @throws      Framework_Exception
  */
 public static function start($site = 'Default', $controller = 'Web')
 {
     self::$site = Framework_Site::factory($site);
     if (is_null(Framework::$log)) {
         $logFile = (string) Framework::$site->config->logFile;
         Framework::$log = Log::factory('file', $logFile);
     }
     self::$site->prepare();
     self::$controller = Framework_Controller::factory($controller);
     self::$request = Framework_Request::factory(self::$controller->requester);
     self::$module =& self::$controller->module();
     if (!in_array($controller, self::$module->controllers)) {
         throw new Framework_Exception('Invalid controller requested', FRAMEWORK_MODULE_ERROR_INVALID_CONTROLLER);
     }
     self::$controller->authenticate();
     $result = self::$controller->start();
     return self::$controller->display();
 }
Beispiel #4
0
 /**
  * start
  *
  * @access public
  * @return mixed PEAR_Error on failure, true on success
  */
 public static function start($site = 'Default', $controller = 'Web')
 {
     self::$site = Framework_Site::factory($site);
     if (PEAR::isError(self::$site)) {
         return PEAR::raiseError(self::$site->getMessage(), FRAMEWORK_ERROR_SITE);
     }
     if (is_null(Framework::$log)) {
         $logFile = (string) Framework::$site->config->logFile;
         Framework::$log = Log::factory('file', $logFile);
     }
     $result = self::$site->prepare();
     if (PEAR::isError($result)) {
         return PEAR::raiseError($result->getMessage(), FRAMEWORK_ERROR_SITE);
     }
     self::$controller = Framework_Controller::factory($controller);
     if (PEAR::isError(self::$controller)) {
         return self::$controller;
     }
     try {
         self::$request = Framework_Request::factory(self::$controller->requester);
     } catch (Framework_Exception $error) {
         return PEAR::raiseError($error->getMessage(), FRAMEWORK_ERROR_REQUEST);
     }
     self::$module =& self::$controller->module();
     if (PEAR::isError(self::$module)) {
         return PEAR::raiseError(self::$module->getMessage(), FRAMEWORK_ERROR_MODULE_INIT);
     }
     if (!in_array($controller, self::$module->controllers)) {
         return PEAR::raiseError('Invalid controller requested', FRAMEWORK_MODULE_ERROR_INVALID_CONTROLLER);
     }
     $result = self::$controller->authenticate();
     if (PEAR::isError($result)) {
         return PEAR::raiseError($result->getMessage(), FRAMEWORK_ERROR_AUTH);
     }
     $result = self::$controller->start();
     if (PEAR::isError($result)) {
         return PEAR::raiseError($result->getMessage(), FRAMEWORK_ERROR_MODULE_EVENT);
     }
     return self::$controller->display();
 }