Example #1
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();
 }
Example #2
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();
 }