/**
* oink_menu 05April2007 Version 1.0
* Copyright (c) 2007 OINK KG
* This menu won't work with Netscape & Co. Use for IE only
* This software is provided "AS IS," without a warranty of any kind.
*/

//Options ----
var useFixedMenuWidth = true;
var fixedMenuWidth = "116px";
var indentForSubmenuBox = 13;
var debugMode = getQueryString("debug") == "true";
var debugOutput = "";
var debugCount = 1;
var debugInsertSQL = "INSERT INTO _LogFiles_Pages (itemGuid, itemTitle, itemPath, ordinalPosition, isIndex) ";


//------------

addEvent(window, "onload", loadOINKMenus);
var OINKMenu = {
    menus: new Array(),
    allMenus: {},
    stopHidingAll: false,
    currentTopMenuIndex: 2,
    tempTopMenuIndex: 0,
    selectedMenuItem: null,
    currentSelectedMenusPath: {},
    selectedTopMenuItem: null,
    tempTopMenuItem: null,
    virtualPath : getVirtualPath()

}
window.currentMenus = {};
window.hidingTimers = {};
window.currentSubmenus = {};
window.currentIntranetNavigationTopMenuIndex = 0;
window.selectedIntranetNavigationTopMenuIndex = null;
window.selectedIntranetNavigationMenuItem = null;

function Menu(id, width, isSubmenu) {

    this.id = id;
    this.items = new Array();
    this.width = width;

    this.isSubmenu = false;
    this.parentMenuId = null;
    this.level = 0;

    this.add = function(item) {
        this.items.push(item);
    };
    this.display = function(display) {
        var divMenu = $("div" + this.id);
        var iframeMenu = $("iframeOINKNavigationMenu"); //iframe" + this.id);
        divMenu.style.display = iframeMenu.style.display = display;
        window.currentMenus[this.id] = display == "none" ? null : this;
    }
    //Hide 
    this.hide = function() {
        this.display("none");
        this.hideSubmenus();
        this.hideParentMenus();
        //if(window.currentMenus[this.parentMenuId])
        //	this.hideParentMenus();

        //window.hidingTimers[this.id] = null;
    }
    //Hide submenus
    this.hideSubmenus = function() {
        if (this.items) {
            for (var i = 0; i < this.items.length; i++) {
                var item = this.items[i];

                if (item.submenu) {

                    item.submenu.hide();
                }
            }
        }
    }
    //Hide parent menus
    this.hideParentMenus = function() {
        return;
        if (!this.parentMenuId) return;

        if (window.currentMenus[this.parentMenuId]) return;


        var parentMenu = OINKMenu.allMenus[this.parentMenuId];
        var div = $("div" + parentMenu.id);
        if (div.style.display == "") {
            parentMenu.hide();
            //window.currentMenus [parentMenu.id] = null;
        }
    }

    //Create menu
    this.createMenu = function() {
        var div = document.createElement("DIV");
        
        div.style.cssText = "z-index:1;display:none;position:absolute;left:0px;top:0px;width:" + (this.width ? this.width : "150") + "px";
        
        var cssSuffix = String(int(OINKMenu.tempTopMenuIndex) + 1);

        div.innerHTML = "<table class='top_menu" + cssSuffix + "' cellspacing=0 border=0 style='width:100%'></table>";
        div.isMenu = true;
        div.id = "div" + this.id;
        div.menuId = this.id;
        document.body.appendChild(div);
        addEvent(div, "onmouseover",
			function(e) {
			    stopHidingMenu(
					getEventSource(e).menuId
				);
			}
		);

        addEvent(div, "onmouseout",
			function(e) {
			    startHidingMenu(getEventSource(e).menuId);
			}
		);

        var iframe = $("iframeOINKNavigationMenu");
        if (!iframe) {
            iframe = document.createElement("IFRAME");
            iframe.style.cssText = "border:0px none;z-index:0;display:none;position:absolute;left:0px;top:0px;width:" + (this.width ? this.width : "150");
            iframe.id = "iframeOINKNavigationMenu"; //this.id;
            iframe.frameBorder = "no";
            iframe.scrolling = "no";
            iframe.style.filter = "alpha(opacity=0)";
            document.body.appendChild(iframe);
        }
        var t = div.firstChild;
        if (this.items) {
            for (var i = 0; i < this.items.length; i++) {

                var item = this.items[i];
                var tr = t.insertRow(i);
                tr.menuId = this.id;
                var td = tr.insertCell(0);
                td.menuId = this.id;
                //Icon
                td.style.width = td.width = 20;
                td.style.paddingLeft = "3px";
                if (item.icon)
                    td.innerHTML = "<img align=absmiddle src='" + item.icon + "'>";
                else
                    td.innerHTML = "&nbsp;";
                td.style.borderRight = "0px none";
                //Title		
                td = tr.insertCell(1);
                td.menuId = this.id;


                td.style.cssText = "white-space:nowrap;padding-right:3px";
                td.style.borderLeft = "0px none";
                td.style.borderRight = "0px none";

                // TODO: replace item.action
                var templateName = item.menuActionTemplate;
                var action = item.action;

                if (window.menuActionTemplates) {
                    var actionTemplate = menuActionTemplates[templateName];

                    if (actionTemplate) {
                        action = actionTemplate.action.replace(/__ACTION_VALUE__/g, item.actionValue);
                    }
                    else {
                        action = item.action;
                    }
                }

                //Log.LogMessage(action);

                td.setAttribute("action", action);

                //Get url 
                var url = action;
                if (url) {
                    if (url.indexOf("location='") >= 0) {
                        url = url.substr(url.indexOf("location='") + "location='".length);
                        url = String(url).removeLastString(";");
                        url = String(url).removeLastString("'");
                        if (!url.toLowerCase().startsWith("/") &&
							!url.toLowerCase().startsWith("http")
                        //&& url.toLowerCase().startsWith ("intranethomepages.aspx")
							) {
                            td.setAttribute("action", action.replace(url,
								getVirtualPath() + url));


                        }
                        if (document.location.href.toLowerCase().indexOf(url.toLowerCase()) > 0) {
                            window.selectedIntranetNavigationTopMenuIndex = window.currentIntranetNavigationTopMenuIndex;
                            window.selectedIntranetNavigationMenuItem = item;
                        }
                    }

                }
                td.onclick = function() { eval(this.getAttribute("action")); };
                td.innerHTML = item.title;

                if (item.itemIsSelected) td.innerHTML = "&gt;&nbsp;" + item.title;

                //Subitems
                td = tr.insertCell(2);
                td.menuId = this.id;

                td.style.width = td.width = 15;
                if (item.submenu) {
                    item.submenu.isSubmenu = true;
                    item.submenu.level++;
                    item.submenu.parentMenuId = this.id;

                    td.className = "navigation-submenu-arrow";
                    td.innerHTML = "&nbsp;";

                    tr.menuId = this.id;
                    tr.submenuId = item.submenu.id;
                    tr.cells[0].submenuId = tr.cells[1].submenuId = tr.cells[2].submenuId = item.submenu.id;

                    addEvent(tr, "onmouseover", function(e) {
                        var elem = getEventSource(e);
                        if (!elem) return;
                        if (window.currentSubmenus[elem.menuId]) {
                            window.currentSubmenus[elem.menuId].hide();
                        }
                        var menu = OINKMenu.allMenus[elem.submenuId];

                        window.currentSubmenus[elem.menuId] = menu;

                        stopHidingMenu(elem.submenuId);

                        displaySubmenu(elem);
                    });
                    addEvent(tr, "onmouseout", function(e) {
                        var elem = getEventSource(e);
                        if (!elem) return;
                        var menu = OINKMenu.allMenus[elem.submenuId];

                        if (!menu) return;

                        startHidingMenu(menu.id);

                    });
                    item.submenu.createMenu();
                }
                else
                    td.innerHTML = "&nbsp;";

                td.align = td.style.textAlign = "right";

                td.style.borderLeft = "0px none";

                tr.onmouseover = function() { this.className = "highlight"; }
                tr.onmouseout = function() {
                    if (isMS())
                        this.removeAttribute("className");
                    else
                        this.className = null;
                }

            }
        }
    }
    OINKMenu.allMenus[this.id] = this;
}
function MenuItem(title, action, icon, menuActionTemplate, actionValue) {
    this.title = title;
    this.action = action;
    this.icon = icon;
    this.submenu = null;
    this.menuActionTemplate = menuActionTemplate;
    this.actionValue = actionValue;

}
function getMenuUrl(action) {
    var guid = null;
    if (action.toLowerCase().indexOf("intranethomepages.aspx") >= 0) {
        var regExp = new RegExp("intranetHomepages.aspx[?]hp=([0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12})", "gi"); //[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}");
        if (regExp.test(action)) {
            regExp.exec(action);
            guid = RegExp.$1;

        }
    }

    var rex = /location='(.+)'/gi;
    rex.exec(action);
    var url = RegExp.$1;
    return [url, guid];
}
function loadOINKMenus() {
    OINKMenu.virtualPath = getVirtualPath();
    for (var m = 0; m < menuDefinitions.length; m++) {

        var mDef = menuDefinitions[m];

        var url = getMenuUrl(mDef.action);

        //		debugOutput += debugInsertSQL + 
        //			"VALUES (" + (url[1]? "'" + url[1]+ "'" : "newid()") + ", " +  
        //			"'" + mDef.title.replace ("'","''") + "', " + 
        //			"'" + url[0].replace ("'","''") + "', " +
        //			debugCount + ", " +
        //			"cast (1 as bit)" + 
        //			")\n";

        debugCount++;

        OINKMenu.tempTopMenuIndex = m;

        if (OINKMenu.selectedMenuItem == null) {
            OINKMenu.currentSelectedMenusPath = {};
            OINKMenu.currentSelectedMenusPath[String(mDef.guid).toLowerCase()] = mDef;
        }
        var menu = buildOinkMenu("menu" + m, mDef, true);
        OINKMenu.menus.push(menu);
        menu.createMenu();
        window.currentIntranetNavigationTopMenuIndex++;

        //		debugOutput += "/*=====================*/\n\n";
    }
    addEvent(document.body, "onclick", function(e) { if (window.currentMenu) window.currentMenu.hide(); });
    addEvent(document.body, "onmousemove", startHidingAllMenus);

    buildCurrentMenuBlock();

    //if ($("divCurrentSubmenu")) $("divCurrentSubmenu").className += " sub-navigation-" + (OINKMenu.currentTopMenuIndex + 1);
    if (window.highlightSelectedTopMenu) {
        window.highlightSelectedTopMenu(window.selectedIntranetNavigationTopMenuIndex);
    }

//    if (debugMode) {
//        document.body.appendChild(JSO.DOM.Node("TEXTAREA", { style: "width:100%;height:300px", value: debugOutput }));
//        //alert (debugOutput);
//    }
}

function hideAllMenus() {
    if (OINKMenu.stopHidingAll) return;
    if (window.currentMenu) window.currentMenu.hide();
}
function startHidingAllMenus(e) {
    var elem = e.srcElement;
    if (!elem) return;
    if (elem.isMenu) return;
    var par = elem.parentNode;
    while (par) {
        if (par.isMenu) return;
        par = par.parentNode;
    }
    OINKMenu.stopHidingAll = false;
    window.hidingAllTimer = window.setTimeout("hideAllMenus()", 1000);
}
function compareCurrentLocationWithMenuItem (menuDef) {
    var prettyUrl, guid, 
        regExp = new RegExp("(" + OINKMenu.virtualPath + "public/.+/)hp([0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12})", "gi"); //[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}");

    if (regExp.test(menuDef.action)) {
        regExp.exec(menuDef.action);
        prettyUrl = RegExp.$1;
        guid = RegExp.$2;

        if (document.location.href.indexOf(prettyUrl) > 0) {
            OINKMenu.selectedMenuItem = menuDef;
            OINKMenu.currentTopMenuIndex = OINKMenu.tempTopMenuIndex;
            OINKMenu.selectedTopMenuItem = OINKMenu.tempTopMenuItem;
        }
    }
    
}
function buildOinkMenu(id, menuDef, isTop) {
    //Check if this is the selected menu item
    if (menuDef.action) {
        if (OINKMenu.selectedMenuItem == null)
            OINKMenu.currentSelectedMenusPath[String(menuDef.guid).toLowerCase()] = menuDef;

        //New solution with pretty urls
		compareCurrentLocationWithMenuItem(menuDef);
    }

    var menu = new Menu(id, menuDef.width);

    if (menuDef.items) {
        for (var i = 0; i < menuDef.items.length; i++) {
            var itemDef = menuDef.items[i];
            if (isTop) {
                OINKMenu.tempTopMenuItem = itemDef;
            }

            itemDef.parentGuid = menuDef.guid;
            if (OINKMenu.selectedMenuItem == null)
                OINKMenu.currentSelectedMenusPath[String(itemDef.guid).toLowerCase()] = itemDef;

            var itemIsSelected = false;
            if (!itemDef) continue;
            var hpGuid = null;
            if (itemDef.action) {
                var regExp = new RegExp("intranetHomepages.aspx[?]hp=([0-9a-z]{8}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{4}-[0-9a-z]{12})", "gi"); //[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,4}");

                if (regExp.test(itemDef.action)) {
                    regExp.exec(itemDef.action);
                    var guid = RegExp.$1;
                    hpGuid = guid;
                    if (document.location.href.toLowerCase().indexOf("intranethomepages.aspx?hp=" + guid.toLowerCase()) > 0) {
                        OINKMenu.selectedMenuItem = itemDef;
                        itemIsSelected = true;
                        itemDef.title = "&gt; " + itemDef.title;
                        OINKMenu.currentTopMenuIndex = OINKMenu.tempTopMenuIndex;
                        OINKMenu.selectedTopMenuItem = OINKMenu.tempTopMenuItem;
                        //if ($("divCurrentSubmenu")) $("divCurrentSubmenu").className += " sub-navigation-" + (OINKMenu.currentTopMenuIndex+1);

                    }
                }
            }

            var item = new MenuItem(itemDef.title, itemDef.action, itemDef.icon, itemIsSelected);

            if (id.indexOf("submenu") == -1) {
                var url = getMenuUrl(itemDef.action);
//                debugOutput += debugInsertSQL +
//					"VALUES (" + (url[1] ? "'" + url[1] + "'" : "newid()") + ", " +
//					"'" + itemDef.title.replace("'", "''") + "', " +
//					"'" + url[0].replace("'", "''") + "', " +
//					debugCount + ", " +
//					"cast (0 as bit)" +
//					")\n";

                debugCount++;

            }
            menu.add(item);

            //No second level menus 
            //if (menu.title!="Presse") continue;

            if (itemDef.submenu) {
                var submenuDef = itemDef.submenu;
                item.submenu = buildOinkMenu(menu.id + "_submenu" + i, submenuDef);
                item.submenu.level++;
                item.submenu.isSubmenu = true;
                item.submenu.parentMenuId = menu.id;
            }
        }
    }
    OINKMenu.allMenus[menu.id] = menu;
    return menu;
}

function displayMenu(id, callerObj) {
    addEvent(callerObj, "onmousemove", function(e) { OINKMenu.stopHidingAll = true; });

    if (window.currentMenu)
        window.currentMenu.hide();
    callerObj.isMenu = true;
    var menu = OINKMenu.menus[id];
    if (!menu) return;
    stopHidingMenu(menu.id);

    if (callerObj.onclick == null)
        callerObj.onclick = function() { if (menu && menu.items[0]) eval(menu.items[0].action); };

    var divMenu = $("div" + menu.id);
    if (!divMenu) return;
    var iframeMenu = $("iframeOINKNavigationMenu"); //"iframe" + menu.id);
    var pos = getObjectPosition(callerObj);

    var menuLeft = pos[0];
    var menuTop = pos[1];


    //Adjust the position 
    menuTop += callerObj.clientHeight + 0;

    divMenu.style.left = iframeMenu.style.left = menuLeft;
    divMenu.style.top = iframeMenu.style.top = menuTop;
    divMenu.style.display = "";
    iframeMenu.style.height = divMenu.offsetHeight;
    iframeMenu.style.width = divMenu.offsetWidth
    iframeMenu.style.display = "";


    //Fixed menu width 
    if (useFixedMenuWidth) divMenu.style.width = fixedMenuWidth;

    window.currentMenus[menu.id] = menu;
    window.currentMenu = menu;


}
function displaySubmenu(tr) {
    OINKMenu.stopHidingAll = true;

    if (tr.tagName == "TD") tr = tr.parentNode;

    var submenuId = tr.submenuId;

    var menu = OINKMenu.allMenus[submenuId];

    if (!menu) return;
    var divMenu = $("div" + menu.id);

    if (!divMenu) return;
    var iframeMenu = $("iframeOINKNavigationMenu"); //iframe" + menu.id);
    var pos = getObjectPosition(tr);
    var menuLeft = pos[0];
    var menuTop = pos[1];

    divMenu.style.visibility = "hidden";
    divMenu.style.display = "";
    var menuHeight = divMenu.offsetHeight;
    var menuWidth = divMenu.offsetWidth;
    var bodyHeight = document.body.clientHeight;
    var bodyWidth = document.body.clientWidth;

    //Adjust the position 
    menuLeft += tr.offsetWidth + 0;
    //Adjust the x coordinate
    var topOffset = 0;
    if ((menuLeft + menuWidth) > bodyWidth) {
        menuLeft = pos[0] - menuWidth - 2;
        menuTop += 5;
    }
    //Adjust the y coordinate
    if ((menuTop + menuHeight) > bodyHeight)
        menuTop = bodyHeight - menuHeight - 2;



    divMenu.style.left = iframeMenu.style.left = menuLeft;
    divMenu.style.top = iframeMenu.style.top = menuTop;

    //Fixed menu width 
    //if (useFixedMenuWidth) divMenu.style.width = fixedMenuWidth;

    divMenu.style.visibility = "visible";

    iframeMenu.style.height = divMenu.offsetHeight;
    iframeMenu.style.display = "";

    window.currentMenus[menu.id] = menu;
    if (menu.parentMenuId) {
        var parentMenu = OINKMenu.allMenus[menu.parentMenuId];
        if (!parentMenu) return;
        parentMenu.display("");
    }

}
function startHidingTopMenu(id) {
    return;
    if (!id) return;
    var menu = OINKMenu.menus[id];
    if (!menu) return;
    window.hidingTimers[menu.id] = window.setTimeout("hideMenu ('" + menu.id + "')", 300);
}

function startHidingMenu(id) {

    //return;
    if (!id) return;
    var menu = (String(id).indexOf("menu") >= 0 ? OINKMenu.allMenus[id] : OINKMenu.menus[int(id)]);
    if (!menu) return;

    window.hidingTimers[menu.id] = window.setTimeout("hideMenu ('" + menu.id + "')", 300);

}

function stopHidingMenu(id) {
    OINKMenu.stopHidingAll = true;
    if (!id) return;
    var menu = OINKMenu.allMenus[id];
    if (window.hidingTimers[id])
        window.clearTimeout(window.hidingTimers[id]);
    if (menu.isSubmenu) {
        stopHidingMenu(menu.parentMenuId);
    }

}

function hideMenu(id) {
    var menu = OINKMenu.allMenus[id];
    menu.hide();
}

function buildCurrentMenuBlock() {
    return;
    if (!OINKMenu.selectedMenuItem) return;
    var div = $("divCurrentSubmenu");
    if (!div) return;

    //div.appendChild (document.createTextNode (OINKMenu.selectedMenuItem.title));
    //alert$(OINKMenu.allMenus);
    //Log.LogMessage (OINKMenu.selectedMenuItem.parentGuid);
    var menuDef = menuDefinitions[OINKMenu.currentTopMenuIndex];
    var level = 0;
    addSubItemsOfCurrentMenuBlock(menuDef, div, level, false);

    //alertOnce ($$(OINKMenu.currentSelectedMenusPath));
}

function addSubItemsOfCurrentMenuBlock2(tempMenuDef, parentNode, level, displaySubMenus) {
    var div = $("divCurrentSubmenu");
    if (!div) return;
    var ul = document.createElement("UL");
    //Log.LogMessage (tempMenuDef.title + ": " + tempMenuDef.guid);
    //Check if displaying submenus
    var withSubmenu = (displaySubMenus || level == 0 ||
		OINKMenu.selectedMenuItem.guid == tempMenuDef.guid ||
			OINKMenu.selectedTopMenuItem.guid == tempMenuDef.guid);
    // ||		OINKMenu.currentSelectedMenusPath [String(tempMenuDef.guid).toLowerCase()]!=null);
    var displaySubMenus2 = (displaySubMenus || OINKMenu.selectedTopMenuItem.guid == tempMenuDef.guid);
    if ((withSubmenu) &&
		(tempMenuDef.items || tempMenuDef.submenu)) {
        var subitems = (tempMenuDef.items ? tempMenuDef.items : tempMenuDef.submenu.items);
        for (var i = 0; i < subitems.length; i++) {
            var itemDef = subitems[i];
            var li = document.createElement("LI");
            li.style.cssText = "list-style-image:url(images/bullet" + (level == 0 ? "3" : "4") + ".gif)";

            var ahref = document.createElement("A");
            ahref.href = "#";
            ahref.setAttribute("action", itemDef.action);
            ahref.className = "item_title";
            if (OINKMenu.selectedMenuItem.guid == itemDef.guid) {
                ahref.className = "item_title selected";
            }
            ahref.onclick = function() {
                eval(String(this.getAttribute("action")));
            };
            ahref.innerHTML = itemDef.title;
            li.appendChild(ahref);
            ul.appendChild(li);
            addSubItemsOfCurrentMenuBlock(itemDef, li, level + 1, displaySubMenus2);
        }
    }

    parentNode.appendChild(ul);
}

function addSubItemsOfCurrentMenuBlock(tempMenuDef, parentNode, level, displaySubMenus) {
    return;
    var div = $("divCurrentSubmenu");
    if (!div) return;

    //Check if displaying submenus
    var withSubmenu = (displaySubMenus || level == 0 ||
		OINKMenu.selectedMenuItem.guid == tempMenuDef.guid ||
			OINKMenu.selectedTopMenuItem.guid == tempMenuDef.guid);

    var displaySubMenus2 = (displaySubMenus || OINKMenu.selectedTopMenuItem.guid == tempMenuDef.guid);

    if ((withSubmenu) &&
		(tempMenuDef.items || tempMenuDef.submenu)) {
        var subitems = (tempMenuDef.items ? tempMenuDef.items : tempMenuDef.submenu.items);
        for (var i = 0; i < subitems.length; i++) {
            var itemDef = subitems[i];
            //Create item container (DIV)
            var menuItem = document.createElement("DIV");
            if (OINKMenu.selectedTopMenuItem.guid == itemDef.guid)
                menuItem.className = "submenuItem activeItemBackground";
            else if (level > 0)
                menuItem.className = "submenuItem activeItemSubmenuBackground";
            else
                menuItem.className = "submenuItem inActiveItemBackground";


            //Create a table 
            var t = document.createElement("TABLE");
            t.border = 0;
            var tr = t.insertRow(0);

            //Create image
            var imgContainer = tr.insertCell(0);
            imgContainer.style.width = "10px";
            imgContainer.style.verticalAlign = "top";

            //imgContainer.style.display = "inline";

            var imgArrow = document.createElement("IMG");
            imgArrow.src = getVirtualPath() + "images/bullet3.gif";
            imgArrow.align = "absmiddle";
            imgContainer.appendChild(imgArrow);
            //menuItem.appendChild (imgContainer);

            //Indent ?
            menuItem.style.paddingLeft = String(18 + indentForSubmenuBox * (level == 0 ? 0 : level - 1)) + "px";

            //Create hyperlink 
            var aContainer = tr.insertCell(1);
            aContainer.style.verticalAlign = "top";

            var ahref = document.createElement("A");
            ahref.href = "#";
            ahref.setAttribute("action", itemDef.action);
            ahref.className = "subMenuItemLink";
            if (OINKMenu.selectedMenuItem.guid == itemDef.guid) {
                ahref.className = "subMenuItemLink subMenuItemLinkSelected";
            }
            ahref.onclick = function() {
                eval(String(this.getAttribute("action")));
            };
            ahref.innerHTML = itemDef.title;
            aContainer.appendChild(ahref);


            menuItem.appendChild(t);
            div.appendChild(menuItem);
            addSubItemsOfCurrentMenuBlock(itemDef, menuItem, level + 1, displaySubMenus2);
        }
    }

}



function executeTopMenuAction(cell) {
    if (!cell) return;
    var action = cell.getAttribute("action");
    if (!action) return;

    window.eval(action);
}
