//Menu.js works in conjunction with menu.xml, menu.css and menu.xsl
function preload() 
{
  if (!document.images) return;
  var ar = new Array();
  var arguments = preload.arguments;

  for (var i = 0; i < arguments.length; i++) 
  {
    ar[i] = new Image();
    ar[i].src = arguments[i];
  }
}

function reloadPage(init) 
{
	if (init==true) with (navigator) 
	{
		if ((appName=="Netscape")&&(parseInt(appVersion)==4)) 
		{
			document.pgW=innerWidth; document.pgH=innerHeight; onresize=reloadPage; 
		}
	}
	else if (innerWidth!=document.pgW || innerHeight!=document.pgH) 
	{
		location.reload();
	}
}

//init
//reloadPage(true);
var timerID = null;
var masterOn = null;
//change the number of drop states to reflect the number of dropdowns that will be in nav
drop0state=0
drop1state=0
drop2state=0
drop3state=0
drop4state=0

n = (document.layers) ? 1:0
ie = (document.all) ? 1:0
ie6 = (document.getElementById) ? 1:0

function defaultOn(drop) 
{
	if (n)
	{ 
		document.layers[drop].visibility="show" 
	}
	else if (ie6) 
	{
		var obj = document.getElementById(drop);
        obj.style.visibility = "visible"
	}
	else if (ie)
	{ 
		document.all[drop].style.visibility="visible" 
	} 
	
	
	masterOn = drop;
}

function closeall()
{
	if((drop0state==1)|(drop1state==1)|(drop2state==1)|(drop3state==1)|(drop4state==1))
	{
		if (ie6)
		{
			var obj = document.getElementById("divMenu0");
			obj.style.visibility = "hidden";
			var obj = document.getElementById("divMenu1");
			obj.style.visibility = "hidden";
			var obj = document.getElementById("divMenu2");
			obj.style.visibility = "hidden";
			var obj = document.getElementById("divMenu3");
			obj.style.visibility = "hidden";
			var obj = document.getElementById("divMenu4");
			obj.style.visibility = "hidden";
		}
		else if (ie)
		{
			divMenu0.style.visibility="hidden"; 
			divMenu1.style.visibility="hidden"; 
			divMenu2.style.visibility="hidden"; 
	 	   	divMenu3.style.visibility="hidden";
			divMenu4.style.visibility="hidden"; 
		}
		else if (n)
		{ 
			document.divMenu0.visibility="hide"; 
			document.divMenu1.visibility="hide"; 	
			document.divMenu2.visibility="hide"; 
			document.divMenu3.visibility="hide";
			document.divMenu4.visibility="hide"; 	
		}	
		
		drop0state=0; drop1state=0; drop2state=0; drop3state=0; drop4state=0;
	}
	
	//set default back on if there is one
	if(masterOn != null) 
	{
		defaultOn(masterOn);
	}
		
}

function openclose(drop)
{
	if (drop=="divMenu0") { dropstate=drop0state; }
	if (drop=="divMenu1") { dropstate=drop1state; }
	if (drop=="divMenu2") { dropstate=drop2state; }
	if (drop=="divMenu3") { dropstate=drop3state; }
	if (drop=="divMenu4") {	dropstate=drop4state; }
	
	if (ie6)
	{
		var obj = document.getElementById("divMenu0");
		obj.style.visibility = "hidden";
		var obj = document.getElementById("divMenu1");
		obj.style.visibility = "hidden";
		var obj = document.getElementById("divMenu2");
		obj.style.visibility = "hidden";
		var obj = document.getElementById("divMenu3");
		obj.style.visibility = "hidden";
		var obj = document.getElementById("divMenu4");
		obj.style.visibility = "hidden";
	}
	else if (ie)
	{
		divMenu0.style.visibility="hidden"; 
		divMenu1.style.visibility="hidden"; 
		divMenu2.style.visibility="hidden"; 
 		divMenu3.style.visibility="hidden"; 
		divMenu4.style.visibility="hidden"; 
	}
	else if (n)
	{ 
		document.divMenu0.visibility="hide"; 
		document.divMenu1.visibility="hide"; 	
		document.divMenu2.visibility="hide"; 
		document.divMenu3.visibility="hide"; 
		document.divMenu4.visibility="hide"; 	
	}
	
	drop0state=0; drop1state=0; drop2state=0; drop3state=0; drop4state=0; 

	clearTimeout(timerID);
	
	if (dropstate==0)
	{
		if (ie6)
		{
			var obj = document.getElementById(drop);
			obj.style.visibility = "visible";
		}
		if (n)
		{ 
			document.layers[drop].visibility="show" 
		}
		else if (ie)
		{ 
			document.all[drop].style.visibility="visible" 
		}

		if (drop=="divMenu0") { drop0state=1; }
		if (drop=="divMenu1") { drop1state=1; }
		if (drop=="divMenu2") { drop2state=1; }
		if (drop=="divMenu3") { drop3state=1; }
		if (drop=="divMenu4") { drop4state=1; }
		
	}
}

function swapImgRestore() 
{
	var i,x,a=document.sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
	clearTimeout(timerID);
	timerID = setTimeout("closeall()", 4);
}

function preloadImages() 
{
  	var d=document; if(d.images){ if(!d.p) d.p=new Array();
    	var i,j=d.p.length,a=preloadImages.arguments; for(i=0; i<a.length; i++)
    	if (a[i].indexOf("#")!=0){ d.p[j]=new Image; d.p[j++].src=a[i];}}
}

function findObj(n, d) 
{
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=findObj(n,d.layers[i].document); return x;
}

function swapImage() 
{
  var i,j=0,x,a=swapImage.arguments; document.sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=findObj(a[i]))!=null){document.sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

