	var currentMenu = null;
	var hideCanceled = true;
	var timeoutVar = 0;
	
	var popup = window.createPopup();
	popup.document.write("<html><head><link rel=\"stylesheet\" type=\"text/css\" href=\"/dailyDiscord.css\" /></head><body class=\"menuPopupBody\" scroll=\"no\"></body></html>");

	function showMenuOptions(menuItem)
	{
		highlight(menuItem);
		currentMenu = menuItem;
        
        var menuContainer =  menuItem.parentElement.parentElement.parentElement.parentElement;
		for (var i = 0; i < menuContainer.children.length; i++)
		{
			if (menuContainer.children[i].tagName == 'DIV' &&
			    menuContainer.children[i].menuID == menuItem.menuID)
				var menuDiv = menuContainer.children[i];
		}
		    
		popup.document.body.innerHTML = menuDiv.innerHTML;
		popup.show(menuContainer.scrollWidth, 0, menuDiv.scrollWidth + 5, menuDiv.scrollHeight + 5, menuItem);
		cancelHide();
	}
    
    function setHide()
    {
        if (timeoutVar != 0)
            clearTimeout(timeoutVar);
        timeoutVar = setTimeout('hideMenu(null)', 500);
        hideCanceled = false;
    }
    
	function hideMenu(menuItem)
	{
		if (hideCanceled == false) 
		{
            if (timeoutVar != 0)
		        clearTimeout(timeoutVar);
		    timeoutVar = 0;
		
	        if (menuItem == null)
	        {
	            popup.hide();
	            menuItem = currentMenu;
            }
	        
            menuItem.className = 'menuItem';
        }
	}
    
	function cancelHide()
	{
		hideCanceled = true;
		clearTimeout(timeoutVar);
		timeoutVar = 0;
	}
    
	function menuClick(href)
	{
		window.navigate(href);
	}
    
	function highlight(menuItem)
	{	    
	    var menuItems = menuItem.parentElement.parentElement.parentElement;
		for (var i = 0; i < menuItems.cells.length; i++)
		{
		    if (menuItems.cells[i].menuID != null
		        || menuItems.cells[i].href != null)
		        if (menuItems.cells[i] == menuItem)
			        menuItems.cells[i].className = 'menuItemHighlight';
		        else
			        menuItems.cells[i].className = 'menuItem';
		}
		
		cancelHide();
    }
    
	function setTableRowClass(tableCell, className)
	{	    
	    var tableRow = tableCell.parentElement;
		for (var i = 0; i < tableRow.cells.length; i++)
		{
	        tableRow.cells[i].className = className;
	    }
    }
    
    function moveSelectedItems(sourceControl, destinationControl)
    {
        var currentIndex = 0;
        
        while (currentIndex < sourceControl.options.length)
        {
            if (sourceControl.options[currentIndex].selected == true)
            {
                var currentItem = sourceControl.options[currentIndex];
                sourceControl.options.remove(currentIndex);
                destinationControl.options.add(currentItem);
            }
            else
                currentIndex += 1;
        }
    }
    
    function selectAllItems(sourceControl)
    {
        sourceControl.multiple=true;
        for (var i=0; i < sourceControl.options.length; i++)
        {
            sourceControl.options[i].selected = true;
        }
    }
    
    function verifyNavigate(message, url)
    {
        if (confirm(message) == true)
            window.navigate(url);
    }
    
    function cleanUpAndGo(url)
    {
        var i = url.indexOf('&amp;');
        while (i != -1)
        {
            url = url.substr(0, i - 2) + url.substr(i + 5, url.length - i - 5);
            i = url.indexOf('&amp;');
        }
        window.location = url;
    }