/** * Smarty {yuimenu} function plugin * * Type: function<br> * Name: yuimenu<br> * Purpose: display a yui menu * * @param $params * @param \Smarty $smarty * @return bool */ function smarty_function_yuimenu($params, &$smarty) { $menu = ' function buildmenu () { var oMenuSidenavJs = new YAHOO.widget.Menu("' . $params['buildon'] . '", { position: "static", hidedelay: 100, lazyload: true }); var aSubmenuData = ' . navigationmodule::navtojson() . '; oMenuSidenavJs.subscribe("beforeRender", function () { if (this.getRoot() == this) { for (i=0; i<=this.getItems().length; i++){ var j=i; // console.debug(aSubmenuData[j].itemdata.length); if (aSubmenuData[j].itemdata.length>0){ this.getItem(i).cfg.setProperty("submenu", aSubmenuData[j]); } } } }); oMenuSidenavJs.render(); } YAHOO.util.Event.onDOMReady(buildmenu); '; expJavascript::pushToFoot(array("unique" => "yuimenubar-" . $params['buildon'], "yui2mods" => "menu", "yui3mods" => $smarty->getTemplateVars('__name'), "content" => $menu, "src" => "")); }
/** * Smarty {yuimenubar} function plugin * * Type: function<br> * Name: yuimenubar<br> * Purpose: display a yui menu bar * * @param $params * @param \Smarty $smarty * @return bool */ function smarty_function_yuimenubar($params, &$smarty) { $menu = ' function buildmenu () { var oMenuBar = new YAHOO.widget.MenuBar("' . $params['buildon'] . '", { constraintoviewport:false, postion:"dynamic", visible:true, zIndex:250, autosubmenudisplay: true, hidedelay: 750, lazyload: true }); var aSubmenuData = ' . navigationmodule::navtojson() . '; oMenuBar.subscribe("beforeRender", function () { if (this.getRoot() == this) { for (i=0; i<=this.getItems().length; i++){ var j=i; if (aSubmenuData[j].itemdata.length>0){ this.getItem(i).cfg.setProperty("submenu", aSubmenuData[j]); } } } }); oMenuBar.render(); } YAHOO.util.Event.onDOMReady(buildmenu); '; expJavascript::pushToFoot(array("unique" => "yuimenubar-" . $params['buildon'], "yui2mods" => "menu", "yui3mods" => $smarty->getTemplateVars('__name'), "content" => $menu, "src" => "")); }
/** * Smarty {navtojson} function plugin * * Type: function<br> * Name: navtojson<br> * Purpose: caonvert navigation structure to javascript via json * * @param $params * @param \Smarty $smarty * @return bool */ function smarty_function_navtojson($params, &$smarty) { echo navigationmodule::navtojson(); }