Example #1
0
 public function __construct()
 {
     //	$this->SetUserRole(\AclSettings::GetDefaultRoleName());
     $this->SetUserRoleId(\AclSettings::GetDefaultRoleID());
 }
 public function dispatche()
 {
     $MODULE_KEY = null;
     $CONTROLLER_KEY = null;
     $ACTION_KEY = null;
     $PARAMS = null;
     $LOCALIZATION = null;
     $ALL_ARGUMENTS = null;
     $ALL_ARGUMENTS = $this->GetAllArgumentsFromUri();
     if (isset($ALL_ARGUMENTS[self::MODULE_LC])) {
         $MODULE_KEY = $ALL_ARGUMENTS[self::MODULE_LC];
     }
     if (isset($ALL_ARGUMENTS[self::CONTROLLER_LC])) {
         $CONTROLLER_KEY = $ALL_ARGUMENTS[self::CONTROLLER_LC];
     }
     if (isset($ALL_ARGUMENTS[self::ACTION_LC])) {
         $ACTION_KEY = $ALL_ARGUMENTS[self::ACTION_LC];
     }
     if (isset($ALL_ARGUMENTS[self::XML])) {
         self::$_is_xml = $ALL_ARGUMENTS[self::XML] == '1' ? true : false;
         self::$_is_ajax = !self::$_is_xml;
     }
     if (!empty($ALL_ARGUMENTS[self::PARAMS])) {
         $PARAMS = $ALL_ARGUMENTS[self::PARAMS];
     }
     $oRouter = new RouterControllerHelper(array(self::MODULE_LC => isset($MODULE_KEY) ? $MODULE_KEY : \RouterSettings::GetDefaultModuleName(), self::CONTROLLER_LC => isset($CONTROLLER_KEY) ? $CONTROLLER_KEY : self::KEY_DEFAULT, self::ACTION_LC => isset($ACTION_KEY) ? $ACTION_KEY : self::KEY_DEFAULT));
     //        $this->AddDebug(__METHOD__ . " #" .__LINE__ .  " oRouter object" . print_r($oRouter,true));
     $this->checkModule($oRouter);
     $this->checkController($oRouter);
     $this->checkAction($oRouter);
     $oRouter->SetCurrentUrl(array(self::MODULE_LC => $oRouter->_module->GetUrl(), self::CONTROLLER_LC => $oRouter->_controller->GetUrl(), self::ACTION_LC => $oRouter->_action->GetUrl(), self::PARAMS => $PARAMS));
     /**
      * Call class section
      */
     $NAMESPACE = $oRouter->_module->GetNamespace();
     $CLASS_NAME = $oRouter->_controller->GetClassName();
     $METHOD_NAME = $oRouter->_action->GetMethodName();
     /**
      * Set static properties
      */
     self::$_current_params = $PARAMS;
     self::$_router = $oRouter;
     $class = self::_compileClass($NAMESPACE, $CLASS_NAME);
     $oController = new $class();
     /*
      * Check ACL
      */
     if ($this->SetAcl($oRouter, $PARAMS) === false) {
         //            $this->AddDebug(__METHOD__ . " #" .__LINE__ .  " Does not pass ACL" . print_r($oRouter,true));
         $this->Redirect(array(self::MODULE_LC => \RouterSettings::GetErrorModule($oRouter->_module->GetUrl()), self::CONTROLLER_LC => \RouterSettings::GetErrorController($oRouter->_controller->GetUrl()), self::ACTION_LC => \RouterSettings::GetErrorAction($oRouter->_action->GetUrl()), self::REDIRECT_PARAMETERS => \AclSettings::GetErrorParams($PARAMS)));
     }
     /*
      * Load() Controller. Execute bussiness logic
      */
     $oController->{$METHOD_NAME}($PARAMS);
 }
 public static function isActive()
 {
     return \AclSettings::isActive();
 }