function _initHeader() { //date_default_timezone_set("PRC"); header("Content-Type:text/html;charset=utf-8"); $config = new Zend_Config_Ini(CONFIGS_PATH . '/application.ini', 'production'); defined("SYS_NAME") || define("SYS_NAME", $config->sys->name); defined("SYS_COPYRIGHT") || define("SYS_COPYRIGHT", $config->sys->copyright . date('Y')); defined("SYS_EMAIL_SUFFIX") || define("SYS_EMAIL_SUFFIX", $config->sys->email_suffix); $page_head = '<title>' . SYS_NAME . '</title> <link type="image/x-icon" rel=icon href="' . HOME_PATH . '/public/images/favicon.ico"> <link rel="stylesheet" type="text/css" href="' . HOME_PATH . '/public/css/style.css"/> <link rel="stylesheet" type="text/css" href="' . HOME_PATH . '/public/css/icon.css"/> <link rel="stylesheet" type="text/css" href="' . HOME_PATH . '/library/ext/resources/css/ext-all.css"> <link rel="stylesheet" type="text/css" href="' . HOME_PATH . '/public/css/BoxSelect.css"> <script type="text/javascript" src="' . HOME_PATH . '/library/ext/ext-all.js"></script> <script type="text/javascript" src="' . HOME_PATH . '/library/ext/locale/ext-lang-zh_CN.js"></script> <script type="text/javascript" src="' . HOME_PATH . '/public/js/BoxSelect.js"></script> <script type="text/javascript" src="' . HOME_PATH . '/public/js/EmployeeCombo.js"></script> <script type="text/javascript">Ext.override(Ext.view.Table, { enableTextSelection: true });var homePath="' . HOME_PATH . '";</script>'; defined("SYS_HEAD") || define("SYS_HEAD", $page_head); $router = new Zend_Controller_Router_Rewrite(); $request = new Zend_Controller_Request_Http(); $router->route($request); $controller = $request->getControllerName(); $action = $request->getActionName(); // 已登录验证过滤 if ($controller != 'home' && $controller != 'index' && $controller != 'login' && $controller != 'hra' && $controller != 'admin' && $controller != 'dcc' || $controller == 'hra' && $action != 'news' || $controller == 'admin' && $action != 'cron' || $controller == 'dcc' && $action != 'upload') { $user_session = new Zend_Session_Namespace('user'); if (!isset($user_session->user_info)) { exit("<script>window.location.href='" . HOME_PATH . "/public/home/login';</script>"); } } }
/** * Same route function in Zend_Controller_Front::dispatch(). * It updates the request with routes and sends a message to * Zend_Controller_Front. This is processed in dispatch(). * * @param Zend_Controller_Request_Abstract $request */ private function _route(Zend_Controller_Request_Abstract $request) { try { $this->_router->route($request); } catch (Exception $e) { if ($this->_front->throwExceptions()) { throw $e; } } }
/** * Test own route */ public function testInstall() { // set request and start routing $this->_request->setRequestUri('install.php'); $request = $this->_router->route($this->_request); // check result $this->assertEquals('install', $this->_router->getCurrentRouteName()); $this->assertEquals('default', $request->getModuleName()); $this->assertEquals('index', $request->getControllerName()); $this->assertEquals('index', $request->getActionName()); }
public function route(Zend_Controller_Request_Abstract $request) { // Let the Rewrite router route the request first $request = parent::route($request); if ($request->getParam('page') == '') { // If the page param isn't set, route to default page and controller $defaultPage = Brightfame_Page_Manager::getInstance()->getDefaultPage(); //$request->setControllerName($defaultPage->pageType->controller); //$request->setParam('page',$defaultPage->page); } else { // Route to current page's controller $page = Brightfame_Page_Manager::getInstance()->getPage($request->getParam('page')); //$request->setControllerName($page->pageType->controller); } return $request; }
/** * Find a matching route to the current PATH_INFO and inject * returning values to the Request object. * * @throws Zend_Controller_Router_Exception * @return Zend_Controller_Request_Abstract Request object */ public function route(Zend_Controller_Request_Abstract $request) { if (($curRouteName = $this->_currentRoute) != null) { $route = $this->getRoute($curRouteName); if (!method_exists($route, 'getVersion') || $route->getVersion() == 1) { $match = $request->getPathInfo(); } else { $match = $request; } if ($params = $route->match($match)) { $this->_setRequestParams($request, $params); return $request; } } return parent::route($request); }
public function route(Zend_Controller_Request_Abstract $request) { // Let the Rewrite router route the request first $request = parent::route($request); logFire("ROUTE", $request->getParam('controller')); if ($request->getParam('controller') == '') { // If the page param isn't set, route to default page and controller $defaultPage = PageManager::getInstance()->getDefaultPage(); $request->setControllerName($defaultPage->pageType->controller); $request->setParam('controller', $defaultPage->page); $request->setParam('action', 'index'); } else { // Route to current page's controller $controller = PageManager::getInstance()->getPage($request->getParam('controller')); $request->setControllerName($controller->pageType->controller); $request->setActionName('index'); } $request->setParam('controller', 'search'); $request->setParam('action', 'search'); return $request; }
public function testConfigChaining() { $routes = array('www' => array('type' => 'Zend_Controller_Router_Route_Hostname', 'route' => 'www.example.com', 'abstract' => true), 'user' => array('type' => 'Zend_Controller_Router_Route_Hostname', 'route' => 'user.example.com', 'abstract' => true), 'index' => array('type' => 'Zend_Controller_Router_Route_Static', 'route' => '', 'abstract' => true, 'defaults' => array('module' => 'default', 'controller' => 'index', 'action' => 'index')), 'imprint' => array('type' => 'Zend_Controller_Router_Route_Static', 'route' => 'imprint', 'abstract' => true, 'defaults' => array('module' => 'default', 'controller' => 'index', 'action' => 'imprint')), 'profile' => array('type' => 'Zend_Controller_Router_Route_Static', 'route' => 'profile', 'abstract' => true, 'defaults' => array('module' => 'user', 'controller' => 'profile', 'action' => 'index')), 'profile-edit' => array('type' => 'Zend_Controller_Router_Route_Static', 'route' => 'profile/edit', 'abstract' => true, 'defaults' => array('module' => 'user', 'controller' => 'profile', 'action' => 'edit')), 'www-index' => array('type' => 'Zend_Controller_Router_Route_Chain', 'chain' => 'www, index'), 'www-imprint' => array('type' => 'Zend_Controller_Router_Route_Chain', 'chain' => 'www, imprint'), 'user-index' => array('type' => 'Zend_Controller_Router_Route_Chain', 'chain' => 'user, index'), 'user-profile' => array('type' => 'Zend_Controller_Router_Route_Chain', 'chain' => 'user, profile'), 'user-profile-edit' => array('type' => 'Zend_Controller_Router_Route_Chain', 'chain' => 'user, profile-edit')); $router = new Zend_Controller_Router_Rewrite(); $front = Zend_Controller_Front::getInstance(); $front->resetInstance(); $front->setDispatcher(new Zend_Controller_Router_ChainTest_Dispatcher()); $front->setRequest(new Zend_Controller_Router_ChainTest_Request()); $router->setFrontController($front); $router->addConfig(new Zend_Config($routes)); $request = new Zend_Controller_Router_ChainTest_Request('http://user.example.com/profile'); $token = $router->route($request); $this->assertEquals('user', $token->getModuleName()); $this->assertEquals('profile', $token->getControllerName()); $this->assertEquals('index', $token->getActionName()); $request = new Zend_Controller_Router_ChainTest_Request('http://foo.example.com/imprint'); $token = $router->route($request); $this->assertEquals('default', $token->getModuleName()); $this->assertEquals('imprint', $token->getControllerName()); $this->assertEquals('defact', $token->getActionName()); }
/** * Find a matching route to the current PATH_INFO and inject * returning values to the Request object. * * @throws Zend_Controller_Router_Exception * @return Zend_Controller_Request_Abstract Request object */ public function route(Zend_Controller_Request_Abstract $request) { //sort routes $this->sortRoutes(); return parent::route($request); }
/** * @throws Zend_Controller_Router_Exception */ public function testMultipleChainsResettingPathInfoInSegmentBlock() { $foo = new Zend_Controller_Router_Route_SubclassTest('notfoo'); $bar = new Zend_Controller_Router_Route_SubclassTest('bar', array('baz' => 'no')); $chain = $foo->chain($bar); $static = new Zend_Controller_Router_Route_SimpleSubclassTest('/foo', array('foo' => 'foo')); $rewrite = new Zend_Controller_Router_Rewrite(); $rewrite->addRoute('static', $static); // First In Last Out, we want this to be matched against second $rewrite->addRoute('chain', $chain); $request = new Zend_Controller_Router_ChainTest_Request('http://www.zend.com/foo'); $res = $rewrite->route($request); $this->assertEquals('foo', $res->getParam('foo'), 'Route did not match'); $this->assertEquals('static', $rewrite->getCurrentRouteName(), 'Routing did not match expected route'); }