function getExtensions() { return OSMapHelper::getExtensions(); }
/** * Call the function prepareMenuItem of the extension for the item (if any) * * @param object Menu item object * * @return void */ public static function prepareMenuItem($item) { $extensions = OSMapHelper::getExtensions(); if (!empty($extensions[$item->option])) { $className = 'xmap_' . $item->option; $obj = new $className(); if (method_exists($obj, 'prepareMenuItem')) { $obj->prepareMenuItem($item, $extensions[$item->option]->params); } } }
public function navigatorLinks($tpl = null) { require_once JPATH_COMPONENT_SITE . '/helpers/osmap.php'; $link = urldecode(JRequest::getVar('link', '')); $name = JRequest::getCmd('e_name', ''); $Itemid = JRequest::getInt('Itemid'); $this->item = $this->get('Item'); $this->state = $this->get('State'); $menuItems = OSMapHelper::getMenuItems($item->selections); $extensions = OSMapHelper::getExtensions(); $this->loadTemplate('class'); $nav = new OSMapNavigatorDisplayer($state->params, $item); $nav->setExtensions($extensions); $this->list = array(); // Show the menu list if (!$link && !$Itemid) { foreach ($menuItems as $menutype => &$menu) { $menu = new stdclass(); #$menu->id = 0; #$menu->menutype = $menutype; $node = new stdClass(); $node->uid = "menu-" . $menutype; $node->menutype = $menutype; $node->ordering = $item->selections->{$menutype}->ordering; $node->priority = $item->selections->{$menutype}->priority; $node->changefreq = $item->selections->{$menutype}->changefreq; $node->browserNav = 3; $node->type = 'separator'; if (!($node->name = $nav->getMenuTitle($menutype, @$menu->module))) { $node->name = $menutype; } $node->link = '-menu-' . $menutype; $node->expandible = true; $node->selectable = false; //$node->name = $this->getMenuTitle($menutype,@$menu->module); // get the mod_mainmenu title from modules table $this->list[] = $node; } } else { $parent = new stdClass(); if ($Itemid) { // Expand a menu Item $items =& JSite::getMenu(); $node =& $items->getItem($Itemid); if (isset($menuItems[$node->menutype])) { $parent->name = $node->title; $parent->id = $node->id; $parent->uid = 'itemid' . $node->id; $parent->link = $link; $parent->type = $node->type; $parent->browserNav = $node->browserNav; $parent->priority = $item->selections->{$node->menutype}->priority; $parent->changefreq = $item->selections->{$node->menutype}->changefreq; $parent->menutype = $node->menutype; $parent->selectable = false; $parent->expandible = true; } } else { $parent->id = 1; $parent->link = $link; } $this->list = $nav->expandLink($parent); } parent::display('links'); exit; }
/** * Call the function prepareMenuItem of the extension for the item (if any) * * @param object Menu item object * * @return void */ public static function prepareMenuItem($item) { $extensions = OSMapHelper::getExtensions(); $result = true; if (!empty($extensions[$item->option])) { $plugin = $extensions[$item->option]; // Check if the method is static or not $result = Alledia\Framework\Helper::callMethod($plugin->className, 'prepareMenuItem', array($item, &$plugin->params)); } if ($result === null) { $result = true; } return $result; }