var Menu;
var LastMenu;
// added so that the nav can be turned off when flash is showing
var MenuEnabled = true;

//var autoHide_on = false;
//var autoHideVar = null;
//var autoHide_activate = true;
//var autoHide_seconds = 3;

var autoHidePass = 1;
var autoHideTime = 50;
var autoHideVar = null;
//autoHideVar = setInterval("autoHide()", 10);


isNS4 = (document.layers) ? true : false;
isIE4 = (document.all && !document.getElementById) ? true : false;
isIE5 = (document.all && document.getElementById) ? true : false;
isNS6 = (!document.all && document.getElementById) ? true : false;

if (isNS4)
{
    window.captureEvents(Event.MOUSEDOWN);
    window.onmousedown = doOut;
}
else
{
    //document.body.onmousemove = doOut;
    document.onmouseup = doOut;
}

function genMenu(Name, Content)
{
    document.writeln('<div class="submenu" id="' + Name + '" style=\"visibility: hidden\">' + Content + '</div>');
}

function showLayer(x)
{
    y = x + 'SubMenu';

    //y.left = document.layers[x].pageX;
    //y.top  = document.layers[x].pageY + 20;

    if (isNS4)
    {
        document.layers[y].visibility = "show";
    }
    else 
    {
        if (isNS6)
        {
            Menu = document.getElementById(x);
            SubMenu = document.getElementById(y);
            SubMenu.style.left = calculateSumOffset(Menu, 'offsetLeft');
            SubMenu.style.visibility = "visible";
        }
        else
        {
            Menu = eval(document.all[x]);
            SubMenu = eval(document.all[y].style);
            SubMenu.left = calculateSumOffset(Menu, 'offsetLeft');
            SubMenu.visibility = "visible";
        }
    }
}

function calculateSumOffset(idItem, offsetName)
{
    var totalOffset = 0;
    var item = eval('idItem');
    do
    {
        totalOffset += eval('item.' + offsetName);
        item = eval('item.offsetParent');
    }
    while (item != null);
    return totalOffset;
}

function hideLayer(x)
{
    y = x + 'SubMenu';
    if (isNS4) { document.layers[y].visibility = "hide"; } 
    else
    {
        if (isNS6)
        {
            Element = document.getElementById(y);
            Element.style.visibility = "hidden";
        }
        else { document.all[y].style.visibility = "hidden"; } 
    }
    clearInterval(autoHideVar);
}

function doMenu(x)
{
	if (MenuEnabled){
	    if(Menu && Menu != x)
	    {
	        hideLayer(Menu);
	        showLayer(x);
	        Menu = x;
	    }
	    if (!Menu) { Menu = LastMenu; } 
	
	        showLayer(x);
	        Menu = x;
	    //if(Menu != x)
	    //{
	        //if (Menu) { hideLayer(Menu); }
	        //showLayer(x);
	        //Menu = x;
	    //}
	    //else { Menu = ""; } 
	}
}

function doCheck(x)
{
    if(Menu && Menu != x)
    {
        hideLayer(Menu);
        showLayer(x);
        Menu = x;
    }
}

function doOut()
{
    if (Menu) { hideLayer(Menu); } 
    LastMenu = Menu;
    Menu = "";
}

function autoHide()
{
	if (autoHidePass > autoHideTime)
	{
	    doOut();
	}
	else
    {
	    autoHidePass++;
	}
}

function subMenuOver()
{
    clearInterval(autoHideVar);
	autoHidePass = 1;
}

function subMenuOut()
{
    autoHideVar = setInterval("autoHide()", 10);
}


function menuOn(Element)
{
    Element.className = "MenuOn";
}

function menuOff(Element)
{
    Element.className = "MenuOff";
}

function menuItemOn(Element)
{
    Element.className = "MenuItemOn";
}

function menuItemOff(Element)
{
    Element.className = "MenuItemOff";
}

function leftnavOn(Element)
{
    Element.className = "lnOn";
}

function leftnavOff(Element)
{
    Element.className = "lnOff";
}

function lsnOn(Element)
{
    Element.className = "lsnOn";
}

function lsnOff(Element)
{
    Element.className = "lsnOff";
}

