$string) { $i++; if (mb_strlen(trim($string), 'UTF-8')) { if ($i == 1) { self::setRequestAction($string); } else { self::$aParams[$ii] = $string; $ii++; } } }**/ } else { $i = 0; $ii = 0; $admin_flag = false; foreach ($aStrings as $key => $string) { $i++; if (mb_strlen(trim($string), 'UTF-8')) { if ($i == 1 and $string == 'admin') { $admin_flag = true; } if ($admin_flag) { if ($i == 2) { self::setRequestModule('admin.'.$string); } else if ($i == 3) { self::setRequestAction($string); } else if ($i > 3){ self::$aParams[$ii] = $string; $ii++; } } else { if ($i == 1) { self::setRequestModule($string); } else if ($i == 2) { self::setRequestAction($string); } else { self::$aParams[$ii] = $string; $ii++; } } } } } if(System_Router::getRequestModule()) { if (System_Router::checkModule(System_Router::getRequestModule())) { System_Router::setCurrentModule(System_Router::getRequestModule()); } else { System_Router::setCurrentModule('errors'); System_Router::setCurrentAction('404'); } } else { if (!System_Router::checkModule(System_Router::getDefaultModule())){ System_Router::setCurrentModule('errors'); System_Router::setCurrentAction('404'); } else { System_Router::setCurrentModule(System_Router::getDefaultModule()); } } } protected function __clone(){} /*************************************************************************** * Установка и получение значений модулей, действий и параметров, * запрошенных, текущих и установленных по-умолчанию. **************************************************************************/ public function setDefaultModule($val) { System_Settings::setDefaultModule($val); } public function getDefaultModule() { return System_Settings::getDefaultModule(); } public function setRequestModule($val) { self::$aRoutes['request_module'] = $val; } public function getRequestModule() { return isset(self::$aRoutes['request_module']) ? self::$aRoutes['request_module'] : false; } public function setCurrentModule($val) { self::$aRoutes['current_module'] = $val; } public function getCurrentModule() { return isset(self::$aRoutes['current_module']) ? self::$aRoutes['current_module'] : false; } public function setDefaultAction($val) { System_Settings::setDefaultAction($val); } public function getDefaultAction() { return System_Settings::getDefaultAction(); } public function setRequestAction($val) { self::$aRoutes['request_action'] = $val; } public function getRequestAction() { return isset(self::$aRoutes['request_action']) ? self::$aRoutes['request_action'] : false; } public function setCurrentAction($val) { self::$aRoutes['current_action'] = $val; } public function getCurrentAction() { return isset(self::$aRoutes['current_action']) ? self::$aRoutes['current_action'] : false; } public function setCurrentSubdomain($val) { self::$aRoutes['current_subdomain'] = $val; } public function getCurrentSubdomain() { return isset(self::$aRoutes['current_subdomain']) ? self::$aRoutes['current_subdomain'] : false; } public function setPathRoot($val) { System_Settings::setPathRoot($val); } public function getPathRoot() { return System_Settings::getPathRoot(); } public function setPathWeb($val) { System_Settings::setPathWeb($val); } public function getPathWeb() { return System_Settings::getPathWeb(); } public function clearPathWeb($val) { return preg_replace("/\/?$/", "", preg_replace("/^http:\/\//", "", trim($val))); } public function setPathCookie($val) { System_Settings::setPathCookie($val); } public function getPathCookie() { return System_Settings::getPathCookie(); } public function getParams() { return self::$aParams; } public function getParam($i) { return isset(self::$aParams[$i]) ?self::$aParams[$i] : false; } public function getRoutes() { $aRoutes = array_merge(System_Settings::getRoutes(), self::$aRoutes); return $aRoutes; } public function checkModule($module) { return file_exists(System_Settings::getPathRoot().'/modules/'.$module.'/controller.php') ? true : false; } public function checkAction($action) { return file_exists(System_Settings::getPathRoot().'/modules/'.self::getCurrentModule().'/'.$action.'.action.php') ? true : false; } public function redirect($url) { header('Location: '.$url); echo''; } } ?>