private function addCurrentPageUnregistered(Zend_Navigation $nav, Zend_Controller_Request_Abstract $request) { if ($nav->findBy('id', 'mii-' . $request->getParam('mid'))) { return; } $session = new Zend_Session_Namespace('previousPage'); if (strcmp(strtolower($request->getActionName()), 'logout') === 0) { $session->unsetAll(); } #$session->previousPage = null; $previousPage = $session->previousPage; $currentPage = Zend_Controller_Front::getInstance()->getRequest()->getRequestUri(); $navItem = $nav->findAllBy('active', true); if (count($navItem) == 0) { $navItem = array('module' => strtolower($request->getModuleName()), 'controller' => strtolower($request->getControllerName()), 'action' => strtolower($request->getActionName()), 'label' => ucfirst(strtolower($request->getActionName())), 'title' => ucfirst(strtolower($request->getActionName())), 'resource' => strtolower($request->getModuleName() . ':' . $request->getControllerName()), 'privilege' => strtolower($request->getActionName()), 'id' => 0, 'miid' => 0, 'visible' => false, 'active' => true); if (is_null($previousPage)) { $nav->addPage($navItem); } else { $navCurrentItem = $nav->findBy('id', $session->miid); $navCurrentItem->addPage($navItem); } } else { $session->previousPage = $currentPage; $navCurrentItem = $nav->findBy('active', true); $session->miid = $navCurrentItem->id; } }