/** * Prepare menu display. * * @return bool */ protected function before() { parent::before(); $this->basemenu = $basemenu = KunenaRoute::getMenu(); if (!$basemenu) { return false; } $parameters = new JRegistry; $template = KunenaFactory::getTemplate(); $parameters->set('showAllChildren', $template->params->get('menu_showall', 0)); $parameters->set('menutype', $basemenu->menutype); $parameters->set('startLevel', $basemenu->level + 1); $parameters->set('endLevel', $basemenu->level + $template->params->get('menu_levels', 1)); $this->list = KunenaMenuHelper::getList($parameters); $this->menu = $this->app->getMenu(); $this->active = $this->menu->getActive(); $this->active_id = isset($this->active) ? $this->active->id : $this->menu->getDefault()->id; $this->path = isset($this->active) ? $this->active->tree : array(); $this->showAll = $parameters->get('showAllChildren'); $this->class_sfx = htmlspecialchars($parameters->get('pageclass_sfx'), ENT_COMPAT, 'UTF-8'); return true; }
function getMenu() { jimport ( 'joomla.application.module.helper' ); $position = "kunena_menu"; $options = array ('style' => 'xhtml' ); $modules = JModuleHelper::getModules ( $position ); $html = ''; foreach ( $modules as $module ) { if ($module->module == 'mod_mainmenu') { $basemenu = KunenaRoute::getMenu (); if ($basemenu) { $module = clone $module; // FIXME: J1.5 only $search = array ('/menutype=(.*)(\s)/', '/startLevel=(.*)(\s)/', '/endLevel=(.*)(\s)/' ); $replace = array ("menutype={$basemenu->menutype}\\2", 'startLevel=' . ($basemenu->sublevel + 1) . '\2', 'endLevel=' . ($basemenu->sublevel + 2) . '\2' ); $module->params = preg_replace ( $search, $replace, $module->params ); } } $html .= JModuleHelper::renderModule ( $module, $options ); } return $html; }
function getMenu() { jimport ( 'joomla.application.module.helper' ); $position = "kunena_menu"; $options = array ('style' => 'xhtml' ); $modules = JModuleHelper::getModules ( $position ); $html = ''; foreach ( $modules as $module ) { if ($module->module == 'mod_mainmenu' || $module->module == 'mod_menu') { $basemenu = KunenaRoute::getMenu (); if ($basemenu) { $module = clone $module; if (version_compare(JVERSION, '1.6','>')) { // Joomla 1.6+ $search = array ('/"menutype":"([^"]*)"/i', '/"startLevel":"([^"]*)"/', '/"endLevel":"([^"]*)"/' ); $replace = array ("\"menutype\":\"{$basemenu->menutype}\"", '"startLevel":"' . ($basemenu->level + 1) . '"', '"endLevel":"' . ($basemenu->level + 2) . '"' ); } else { // Joomla 1.5 $search = array ('/menutype=(.*)(\s)/', '/startLevel=(.*)(\s)/', '/endLevel=(.*)(\s)/' ); $replace = array ("menutype={$basemenu->menutype}\\2", 'startLevel=' . ($basemenu->sublevel + 1) . '\2', 'endLevel=' . ($basemenu->sublevel + 2) . '\2' ); } $module->params = preg_replace ( $search, $replace, $module->params ); } } $html .= JModuleHelper::renderModule ( $module, $options ); } return $html; }
function getMenu() { $basemenu = KunenaRoute::getMenu(); if (!$basemenu) { return ' '; } $this->parameters = new JRegistry(); $this->parameters->set('showAllChildren', $this->ktemplate->params->get('menu_showall', 0)); $this->parameters->set('menutype', $basemenu->menutype); $this->parameters->set('startLevel', $basemenu->level + 1); $this->parameters->set('endLevel', $basemenu->level + $this->ktemplate->params->get('menu_levels', 1)); $this->list = KunenaMenuHelper::getList($this->parameters); $this->menu = $this->app->getMenu(); $this->active = $this->menu->getActive(); $this->active_id = isset($this->active) ? $this->active->id : $this->menu->getDefault()->id; $this->path = isset($this->active) ? $this->active->tree : array(); $this->showAll = $this->parameters->get('showAllChildren'); $this->class_sfx = htmlspecialchars($this->parameters->get('pageclass_sfx'), ENT_COMPAT, 'UTF-8'); return count($this->list) ? $this->loadTemplateFile('menu') : ''; }