public function preDispatch() { parent::preDispatch(); $menu = new Zupal_Menu(); $item = new Zupal_Menu_Item('Admin', 'admin', 'index', 'index'); $menu->set_item($item); $item = new Zupal_Menu_Item('Places', 'admin', 'places', 'index'); $menu->set_item($item); $this->view->placeholder('breadcrumb')->set($menu); }
public function preDispatch() { $menu = new Zupal_Menu('Modules'); $active_module = Zend_Controller_Front::getInstance()->getRequest()->getModuleName(); foreach (Zupal_Module_Manager::getInstance()->getModuleNames() as $module) { $item = new Zupal_Menu_Item(ucfirst($module), $module, 'index', 'index'); $menu->set_item($item); if (!strcasecmp($module, $active_module)) { $item->list_class = 'active'; $module_def = Zupal_Module_Manager::getInstance()->get($module); $menu_file = $module_def->info()->menu; if ($menu_file) { $menu_path = $module_def->directory() . DS . $menu_file; if (file_exists($menu_path)) { $config = FALSE; switch (pathinfo($menu_path, PATHINFO_EXTENSION)) { case 'xml': $config = new Zend_Config_Xml($menu_path, 'menu'); break; case 'ini': $config = new Zend_Config_Ini($menu_path); break; } if ($config) { $submenu = new Zupal_Menu('', $config); $item->submenu = $submenu; } } else { $module_item = Zupal_Module_Manager::getInstance()->get($module); if ($module_item->has('library' . DS . str_replace('_', DS, $menu_file) . '.php')) { $item->submenu = new $menu_file(); } } } } } $this->view->placeholder('nav')->set($menu); foreach (array('message', 'error') as $property) { $v = $this->_getParam($property, ''); if ($v) { error_log(__METHOD__ . ': ' . $property . ' = ' . $v); $this->view->placeholder($property)->set($v); } } }