Пример #1
0
 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;
     }
 }