// determines is browser is IE6 or older
IsIE6 = function(){
   var ie=document.all && !window.opera;
   if(ie && typeof document.body.style.maxHeight == "undefined") {
      return true;
   } else {
      return false;
   }
}
// hides select boxes if they are inside the region of x to xPlus and y to yPlus
hideSelect = function(x, xPlus, y, yPlus) {//jra
   var selArr = document.getElementsByTagName('select');
   for(i=0; i<selArr.length; i++) {
      var selX = findX(selArr[i]);
      var selY = findY(selArr[i]);
     
      if(selX > x && selX  < xPlus && selY > y && selY < yPlus) {
         selArr[i].style.visibility = 'hidden';
      }
   }
}
// unhides select boxex if they are inside the region of x to xPlus and y to yPlus
showSelect = function(x, xPlus, y, yPlus) {
   var selArr = document.getElementsByTagName('select');
   for(i=0; i<selArr.length; i++) {
      var selX = findX(selArr[i]);
      var selY = findY(selArr[i]);
     
      if(selX > x && selX  < xPlus && selY > y && selY < yPlus) {
         selArr[i].style.visibility = 'visible';
      }
   }
}
// ----------------------------------------------------------------
// Display dropdown menu
// ----------------------------------------------------------------
showDropNav = function(order){

	var	_menu						= document.getElementById("dropNav"+order);
	if(!_menu) return true;
	
	var _dropNavDiv					= document.getElementById("dropNavDiv");
	var _mainNav					= document.getElementById("mainNav"+order);

	
	_dropNavDiv.style.top			= findY(_mainNav) + (_mainNav).clientHeight + "px";
	_dropNavDiv.style.left			= findX(_mainNav) + "px";
	_dropNavDiv.style.visibility 	= "visible";
	
	_menu.style.width				= _mainNav.offsetWidth +"px";
	_menu.firstChild.style.width	= _mainNav.offsetWidth +"px";
	_menu.style.height				= "1px";
	_menu.style.visibility			= "visible";
	_menu.style.height				= _menu.clientHeight+"px";
	
	//hack to hide select box for IE select box bug
	if(IsIE6()) {
	   // hide any select box in the area of the dropNavDiv
	   hideSelect((findX(_mainNav)-50), (findX(_mainNav)+300), findY(_mainNav), (findY(_mainNav) + (_mainNav).clientHeight+200));	
	}
	
	return true;
}


// ----------------------------------------------------------------
// Hide all dropdown menus
// ----------------------------------------------------------------
hideDropNav = function(navBean){

	clearTimeout(navBean.hideTimer);
	var _dropNavDiv					= document.getElementById("dropNavDiv");
	
	_dropNavDiv.style.visibility 	= "hidden";
	_dropNavDiv.style.top			="-400px";
	_dropNavDiv.style.left			="-400px";
	
	for(var x=0 ; x<20 ; x++){
		var _dropMenu = document.getElementById("dropNav"+x);
			if(_dropMenu){
			 _dropMenu.style.visibility = "hidden";
			}
	}
	
	//hack to show select box for IE select box bug
	if (IsIE6()) {
	   //unhide any select box that is in the area of any dropNavDiv
	   showSelect(0,1440,0,400);
	}
	return true;
}


// ----------------------------------------------------------------
// Replace background image for menu dropdown items
// ----------------------------------------------------------------
swapBackgroundOver = function(item){
	var elem = document.getElementById(item);
	elem.style.backgroundColor = "#CECCCD";
	var bgImage = elem.style.backgroundImage.toString();
	bgImage = bgImage.replace(/\_TOP/, "_OVER");
	bgImage = bgImage.replace(/\_MID/, "_OVER");
	elem.style.backgroundImage 	= bgImage.toString();
	return true;
}

// ----------------------------------------------------------------
// Return background image for menu dropdown items to original
// ----------------------------------------------------------------
swapBackgroundOut = function(item){
	var elem = document.getElementById(item);
	var isTop = (elem.id.indexOf(".0")>-1);
	elem.style.backgroundColor = "#3A5FCD";
	var bgImage = elem.style.backgroundImage.toString();
	if(isTop){
		bgImage = bgImage.replace(/\_OVER/, "_TOP");
	}else{
		bgImage = bgImage.replace(/\_OVER/, "_MID");
	}
	elem.style.backgroundImage 	= bgImage.toString();
	return true;
}

// ----------------------------------------------------------------
// Replace image with mouseover image
// ----------------------------------------------------------------
swapImageOver = function(imageId){
	
	var img 	= document.getElementById(imageId);
	var imgSrc 	= img.src.toString();
		imgSrc	= imgSrc.replace(/\_OUT/, "_OVER");
	img.src		= imgSrc;
	return true;	
}

// ----------------------------------------------------------------
// Replace mouseover image with original image
// ----------------------------------------------------------------
swapImageOut = function(imageId){

	var img 	= document.getElementById(imageId);
	var imgSrc 	= img.src.toString();
	 	imgSrc	= imgSrc.replace(/\_OVER/, "_OUT");
	img.src		= imgSrc;
	return true;	
}



// ----------------------------------------------------------------
// Find x coordinate of an element
// ----------------------------------------------------------------
function findX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
		
	if(navigator.appName.indexOf("Microsoft")>-1) return curleft;
	if(navigator.appName.indexOf("Netscape")>-1) return curleft;
}

// ----------------------------------------------------------------
// Find y coordinate of an element
// ----------------------------------------------------------------
function findY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}
