Exemple #1
0
 /**
  * Load controller
  * @param string $a_controller
  * @return ZController
  */
 public static final function &controller($a_controller)
 {
     $c = null;
     try {
         $c = ZLoader::controller($a_controller);
     } catch (ZControllerException $e) {
         if (Zoombi::getApplication()->isMode(ZApplication::MODE_DEBUG)) {
             throw $e;
         }
     } catch (Exception $e) {
         if (Zoombi::getApplication()->isMode(ZApplication::MODE_DEBUG)) {
             throw $e;
         }
     }
     return $c;
 }
 private function _processRoute(ZRoute &$a_route, &$a_code, &$a_message)
 {
     $ctl = null;
     if (!$a_route->controller) {
         $a_route->controller = $this->m_config->getValue('controller.default_name', 'index');
     }
     if (!$a_route->action) {
         $a_route->action = $this->m_config->getValue('controller.default_action', 'index');
     }
     try {
         $ctl = ZLoader::controller($a_route->getController());
     } catch (ZControllerException $e) {
         $a_code = $e->getCode();
         $a_message = $e->getMessage();
         return false;
     }
     if (!$ctl) {
         return false;
     }
     $this->setController($ctl);
     return true;
 }