function initMenu($id, $menu, $currentMenu, $activeTopId, $hlCurrentItem, $params) { $safeMode = (bool)$params->get('safeMode', true); AriYUIMenuHelper::loadAssets($id, $safeMode); $menuId = $id . '_menu'; $direction = $params->get('direction', 'horizontal'); $isVertical = ($direction != 'horizontal'); $selectedIndex = $hlCurrentItem ? AriYUIMenuHelper::getMenuItemIndex($menu, $currentMenu, $activeTopId, (bool)$params->get('showHiddenItems', false)) : -1; $defMenuConfig = array( 'zIndex' => 0, 'classname' => '', 'hidedelay' => 0, 'maxheight' => 0, 'minscrollheight' => 90, 'scrollincrement' => 1, 'showdelay' => 250 ); $config = array( 'lazyLoad' => true, 'autosubmenudisplay' => true, 'position' => 'static' ); foreach ($defMenuConfig as $key => $defValue) { $value = AriUtils::parseValueBySample($params->get($key, $defValue), $defValue); if ($value != $defValue) $config[$key] = $value; } $submenuAlign = $params->get('submenualignment'); if (!empty($submenuAlign)) { $submenuAlign = explode(',', $submenuAlign); $submenuAlign = array_map('trim', $submenuAlign); $config['submenualignment'] = $submenuAlign; } $doc =& JFactory::getDocument(); $doc->addScriptDeclaration( sprintf( 'YAHOO.util.Event.onContentReady("' . $menuId . '", function () { var oMenu = new YAHOO.widget.%3$s("' . $menuId . '", %1$s); oMenu.render(); oMenu.show(); if (%2$d > -1) oMenu.getItem(%2$d).cfg.setProperty("selected", true); });', AriJSONHelper::encode($config), $selectedIndex, $isVertical ? 'Menu' : 'MenuBar' ) ); AriYUIMenuHelper::addCustomStyles($id, $params); }
* @license GNU/GPL (http://www.gnu.org/copyleft/gpl.html) * */ defined('_JEXEC') or die('Restricted access'); require_once dirname(__FILE__) . '/mod_ariyuimenu/kernel/class.AriKernel.php'; AriKernel::import('Utils.Utils'); AriKernel::import('Menu.Menu'); AriKernel::import('Web.HtmlHelper'); AriKernel::import('YUIMenu.YUIMenu'); AriKernel::import('Template.Template'); $menu = new AriMenu($params->get('menutype', 'mainmenu')); $menuLevel = $menuStartLevel = intval($params->get('startLevel', 0), 10); $menuEndLevel = intval($params->get('endLevel', 0), 10); $uniqueId = (bool)$params->get('uniqId', false); $activeMenuItem = $menu->getActive(); // Template parameters $menuDirection = $params->get('direction'); $menuId = !$uniqueId ? 'ariyui' . $module->id : uniqid('ayui', false); $hlCurrentItem = (bool)$params->get('highlightCurrentItem', true) && !is_null($activeMenuItem); $hlOnlyActiveItems = (bool)$params->get('onlyActiveItems', false); $activeTopId = $activeMenuItem ? $activeMenuItem->id : 0; AriYUIMenuHelper::initMenu($menuId, $menu, $menu->getItems(ARI_MENU_LEVEL_PARAM, $menuLevel), $activeTopId, $hlCurrentItem, $params); require JModuleHelper::getLayoutPath('mod_ariyuimenu');