
function HideLayer(pLayer, bCascade) {
	for (var i=0; i<pLayer.length; i++) {
		pLayer[i].visibility = "hide";
		if (bCascade)
			HideLayer(pLayer[i].document.layers, true);
	}
}
		
function HideDivTags() {
	var pDivs  = "";
	var sDivNm = ""		;
	if (navigator.family == "IE") 
		pDivs  = document.all.tags("div");	
	else
		pDivs  = document.getElementsByTagName("div");	

	for (var i=0; i<pDivs.length; i++) {
		sDivNm = pDivs[i].id;
		if (sDivNm.substr(0,3) == "mnu")
			pDivs[i].className = "hide";
	}
}
		
function Toggle(pAnkr, pDivLyr) {
							
	var nArgs = arguments.length;
	var pLayer = document.layers;
	switch (navigator.family) {
		case "IE":
			HideDivTags();
			//alert(document.all["mnuDropA"].id);
		break;
		case "nn":
			HideLayer(pLayer, true);
			//alert(document.layers["mnuDropA"]);
		break;
		case "gecko":
			HideDivTags();
			pDivLyr = document.getElementById(pDivLyr);
		break;
		default:
		break;
	}
	if (nArgs != 0) {				
		// check which browser we are
		var pDynElem = (pLayer ? pDivLyr.visibility : pDivLyr.className);
		
		// be smart about namimg display classes
		pDynElem = (pDynElem = "hide" ? "show" : "hide");
		
		// make the changes to the style or class
		switch(navigator.family) {
			case "nn":
				pDivLyr.visibility = pDynElem;
				if (pDynElem == "show") {
					pDivLyr.left = pAnkr.x;
					pDivLyr.top  = pAnkr.y + 15;
				}
			break;
			default:
				pDivLyr.className = pDynElem;
			break;
		}
	}
	return(false);
}

//for firefox time out based menu.
var timeoutid = null;

function OnMouseOutCheck(pDiv) {
	switch(navigator.family) {
		case "IE":
			if (!pDiv.contains(event.toElement)) Toggle();
		break;
		case "nn":
			Toggle();
		break;
		case "gecko":
		    
		    //firefox 1.5 dosn't always give us an event for the mouse out, so we will use a time out approach
		    
		    //the div that needs to be hidden
		    var pDivTag = document.getElementById(pDiv);
			//if there is an old time out, clear, since we are starting again.
            if(timeoutid != null)
            {
                window.clearTimeout(timeoutid);
            }
            //in one sec, hide the div... 
            timeoutid = window.setTimeout(function()
			{
			    pDivTag.className = "hide";
			    timeoutid=null;
			}
			,500);		
						
		break;
		default:
		break;
	}	
}
