protected function _find($type, $id) { // load config require_once JPATH_ADMINISTRATOR . '/components/com_zoo/config.php'; // get ZOO app $app = App::getInstance('zoo'); if (self::$_menu_items == null) { $component_id = $app->joomla->isVersion('1.5') ? 'componentid' : 'component_id'; $menu_items = $app->object->create('JSite')->getMenu()->getItems($component_id, JComponentHelper::getComponent('com_zoo')->id); $menu_items = $menu_items ? $menu_items : array(); self::$_menu_items = array_fill_keys(array('category', 'frontpage', 'item'), array()); foreach ($menu_items as $menu_item) { switch (@$menu_item->query['view']) { case 'frontpage': self::$_menu_items['frontpage'][$app->parameter->create($menu_item->params)->get('application')] = $menu_item; break; case 'category': self::$_menu_items['category'][$app->parameter->create($menu_item->params)->get('category')] = $menu_item; break; case 'item': self::$_menu_items['item'][$app->parameter->create($menu_item->params)->get('item_id')] = $menu_item; break; } } } return @self::$_menu_items[$type][$id]; }