/** * Appelé avant chaque preDispatch() du contrôleur actuel ($_actionController) */ public function preDispatch() { if (!$this->_actionController instanceof Zend_Acl_Resource_Interface || $this->_disabled) { return; } $result = false; // $action = $this->_actionController->getRequest()->getActionName(); $roles_tab = $this->_getActualRole(); foreach ($roles_tab as $role) { try { $result = $this->_acl->isAllowed($role, $this->_actionController); if ($result == true) { break; } } catch (Zend_Acl_Exception $e) { exit($e->getMessage()); $result = false; } } if ($result === false) { $_redirector = new Zend_Controller_Action_Helper_Redirector(); $_redirector->setGotoRoute(array('controller' => 'index', 'action' => 'index')); //$_redirector->goto ('index/index', null); //$this->_redirect('/index/index'); // $this->_actionController->getHelper('redirector')->gotoUrlAndExit('"/index/index"'); } }
public function testSetGotoRoute() { $router = Zend_Controller_Front::getInstance()->getRouter(); $route = new Zend_Controller_Router_Route('blog/archive/:id', array('controller' => 'blog', 'action' => 'view', 'id' => false), array('id' => '\\d+')); $router->addRoute('blogArchive', $route); $this->redirector->setGotoRoute(array('id' => 281), 'blogArchive'); $this->assertEquals('/blog/archive/281', $this->redirector->getRedirectUrl()); }
public function setGotoRoute(array $urlOptions = array(), $name = null, $reset = false) { $urlOptions = $this->_appendSid($urlOptions); parent::setGotoRoute($urlOptions, $name, $reset); }