var mainMenuColor="#993366";
var menuItemColor="#D6C6A1";
var highlightColor="blue";
var borderWidth=1;
var borderHeight=1;
var paddingWidth=4;
var paddingHeight=4;
var itemWidth=168;
var itemHeight=20;
var hAlign="left";
var vAlign="middle";
var anchorClass="menuAnchor";
var itemTagsOpen="";
var itemTagsClose="";
var menuDelay=0.2; 	





//	
// Do not change anything below this line
// ######################################
var lockArray=new Array();
var clrByJump = false;

	// Added 3/27/01 JS
	// For OK Farm site
function getLock(name){
	if(lockArray[name]!=true)
		return false;
	else    return true;
}

function clearLock(name){
	lockArray[name]=false;
}

function setLock(name){
	lockArray[name]=true;
}

function clearLocks() {
	for (a=0; a<lockArray.length;a++)
		lockArray[a]=false;
}

function clearByJump() {
	// Image restore goes here
	clrByJump = true;
}


	// Variable (and "constant") declaration:
	var TYPE_NONE = 0;
	var TYPE_IE4 = 1;
	var TYPE_NS4=2;
	function menu (left,top) { this.childMenuOpen=-1; this.parentMenuIndex=-1; this.hasMouse=false; this.left=left; this.top=top; this.childCount=0; this.children=new Array; this.url="";}
	function menuItem (contents,url,background) { this.transparent=false; this.childMenuIndex=-1; this.background=background; this.image=""; this.html=contents; this.url=url;}
	var menus=new Array();
	var menuCount=0;

	// Browser detection:
	var type= TYPE_NONE;
	if (document.layers) type = TYPE_NS4;
	if (document.all) type=TYPE_IE4;


function menuOn (index) {
	
	setLock(index);	
	 
	showMenu(index);
	menus[index].hasMouse=true;

	// If this menu has a parent, turn the parent on, too:
	var parentIndex=menus[index].parentMenuIndex;
	if (parentIndex > -1 ) {
	   menus[parentIndex].childMenuOpen=index;
		showMenu(parentIndex);
//		menus[parentIndex].hasMouse=true;
	}

}

function menuOff(index,buttonName) {


		menus[index].hasMouse=false;

		// If this menu has a child open with the mouse, don't close: 
		if ((menus[index].childMenuOpen > -1)&&(menus[menus[index].childMenuOpen].hasMouse)) return;
		
		// If this is a child menu, close the parent too if the parent doesn't have the mouse:
		if (menus[index].parentMenuIndex > -1) {
		   if (menus[menus[index].parentMenuIndex].hasMouse==false)
		   this.timer=setTimeout(("hideMenu('"+menus[index].parentMenuIndex+"')"),1000*menuDelay);
		   menus[menus[index].parentMenuIndex].childMenuOpen=-1;  // We closed the child.
		}	
		
		// If this menu has an open child that doesn't have the mouse, close them both:
//		if(menus[index].childMenuOpen > -1){
	//		if((menus[index].hasMouse==false)&&(menus[(menus[index].childMenuOpen)].hasMouse==false))	;					  		
			//	this.timer=setTimeout(("hideMenu('"+menus[index].childMenuOpen+"')"),1000*menuDelay);
		//}	
		
		this.timer=setTimeout(("hideMenu('"+index+"')"),1000*menuDelay);
}


// Shows a menu...
function showMenu(index) {

	var parentIndex=menus[index].parentMenuIndex;
	var childIndex=menus[index].childMenuOpen;
	
	if (type==TYPE_NS4) {		// For Netscape browsers
	  // Hide all menus, except 1) This menu, 2) it's parent, and 3) any open child menu.
	   for (var n=0; n<menuCount; n++) if((n!=index)&&(n!=parentIndex)&&(n!=childIndex)) {	document.layers[n].visibility="hidden"; }
	   // Show this menu.
		document.layers[index].visibility="show";
	} else if (type==TYPE_IE4) {	// For IE browsers
	  // Hide all menus, except 1) This menu, 2) it's parent, and 3) any open child menu.
 	  for (var n=0; n<menuCount; n++) if((n!=index)&&(n!=parentIndex)&&(n!=childIndex)) { document.all("menu"+n+"d").style.visibility="hidden"; }    
	   // Show this menu.
		document.all("menu"+index+"d").style.visibility="visible";
	}

}


// Hides a menu...
function hideMenu(index) {

	// Just leave alone if this menu still has mouse over it, or has an open child with the mouse.
	if(menus[index].hasMouse) return;	
	if(menus[index].childMenuOpen > -1) {
		if (menus[menus[index].childMenuOpen].hasMouse) return;
	}
	
	// If this window has an open child, shut it down, too:
	if (menus[index].childMenuOpen > -1){
	   hideMenu(menus[index].childMenuOpen);  // Recursive call!
	   menus[index].childMenuOpen =-1;
	}
	
	if (type==TYPE_NS4) {		// For Netscape browsers
		document.layers[index].visibility="hidden";
	} else if (type==TYPE_IE4) {	// For IE browsers
		document.all("menu"+index+"d").style.visibility="hidden";
	}

	if ((getLock(index) == true)&&(menus[index].parentMenuIndex==-1)){	// Clear lock for root menus only
		// Image restore goes here
		clearLock(index);
	}


}

function onMouseOverItem (index1, index2) {
		 
	// Highlight the menu:
	if (type==TYPE_NS4) {
		document.layers[index1].layers[index2].bgColor=highlightColor;
	} else if (type==TYPE_IE4) {
		document.all("menu"+index1+index2).style.background=highlightColor;
	}

	// Hide any popout (children) menus that may be visible from previously:
	if(menus[index1].childMenuOpen > -1)
			hideMenu(menus[index1].childMenuOpen);
								   
	// If this item has a popout child, show the child:
	if ((menus[index1].children[index2].childMenuIndex) > -1){			   	  	   // Do we have a child menu?
	   menus[index1].childMenuOpen=menus[index1].children[index2].childMenuIndex;  // Remember which child is open
	   showMenu(menus[index1].children[index2].childMenuIndex);					   // Open the child	  
	   }
}

function onMouseOutItem (index1, index2) {

	if(menus[index1].children[index2].transparent) itemColor="";
	else    itemColor=menuItemColor;												

	if (type==TYPE_NS4) {
		document.layers[index1].layers[index2].bgColor=menuItemColor;
	} else if (type==TYPE_IE4) {
		document.all("menu"+index1+index2).style.background=itemColor;
	}
}

// Draws the menus.
function drawMenus () {

    // Loop through the menu items, looking for items that are parents of submenus.
	// For each one we find, set it's child menu's parentMenuIndex.
	for (var n=0; n<menuCount; n++) {
		for (var m=0; m<menus[n].childCount; m++) {
			if (menus[n].children[m].childMenuIndex > -1)
			   menus[menus[n].children[m].childMenuIndex].parentMenuIndex=n;
		}
	}
				
	if (type==TYPE_NS4) {			// Draw Netscape menus.

		for (var curMenu=0; curMenu<menuCount; curMenu++) {
			document.writeln("<layer visibility='hidden' width='"+(itemWidth+(2*borderWidth))+"' height='"+((itemHeight+borderHeight)*(menus[curMenu].childCount)+borderHeight)+"' pagex='"+menus[curMenu].left+"' pagey='"+menus[curMenu].top+"' bgcolor='"+mainMenuColor+"' onmouseover='menuOn("+curMenu+")' onmouseout='menuOff("+curMenu+")'>");
			for (var curItem=0; curItem<menus[curMenu].childCount; curItem++) {
				document.write("<layer width='"+itemWidth+"' height='"+itemHeight+"' top='"+(borderHeight+(curItem*(itemHeight+borderHeight)))+"' left='"+borderWidth+"' bgcolor='"+menuItemColor+"'><center><table cellspacing='0' cellpadding='0' border='0' background='"+menus[curMenu].children[curItem].background+"' width='"+(itemWidth-(2*paddingWidth))+"' height='"+(itemHeight-(2*paddingHeight))+"'><tr><td align='"+hAlign+"' valign='"+vAlign+"'>"+'<span onclick="'+"window.location='"+menus[curMenu].children[curItem].url+"'"+'"'+" onmouseover="+'"'+"window.status='"+menus[curMenu].children[curItem].html +"'; this.style.color='#FF0000'"+'" onmouseout="'+"window.status=' '; this.style.color='#FFFFFF'"+ '"'+" class=link2j>");
				document.write(itemTagsOpen+menus[curMenu].children[curItem].html+itemTagsClose);
				document.writeln("</a></td></tr></table></center></layer>");
			}
			document.writeln("</layer>");
		}

	} else if (type==TYPE_IE4) {		// Draw IE menus.

		for (var curMenu=0; curMenu<menuCount; curMenu++) {
			document.writeln("<div id='menu"+curMenu+"d' style='background:"+mainMenuColor+";position:absolute;visibility:hidden;width:"+(itemWidth+(2*borderWidth))+";height:"+((itemHeight+borderHeight)*(menus[curMenu].childCount)+borderHeight)+";left:"+menus[curMenu].left+";top:"+menus[curMenu].top+";' onmouseover='menuOn("+curMenu+")' onmouseout='menuOff("+curMenu+")'>");
			for (var curItem=0; curItem<menus[curMenu].childCount; curItem++) {
				if(menus[curMenu].children[curItem].transparent) itemColor="";
				else    itemColor=menuItemColor;												
				document.write("<div id='menu"+curMenu+""+curItem+"' style='background:"+itemColor+";position:absolute;width:"+itemWidth+";height:"+itemHeight+";top:"+(borderHeight+(curItem*(itemHeight+borderHeight)))+";left:"+borderWidth+";' bgcolor='"+menuItemColor+"'><center><table cellspacing='0' cellpadding='0' border='0' background='"+menus[curMenu].children[curItem].background+"' width='"+(itemWidth-(2*paddingWidth))+"' height='"+(itemHeight-(2*paddingHeight))+"'><tr><td align='"+hAlign+"' valign='"+vAlign+"'>"+'<span onclick="'+"window.location='"+menus[curMenu].children[curItem].url+"'"+'"'+" onmouseover="+'"'+"window.status='"+menus[curMenu].children[curItem].html +"'; this.style.color='#FF0000'"+'" onmouseout="'+"window.status=' '; this.style.color='#25408f'"+ '"'+" class=link5j>");
				document.write(itemTagsOpen+menus[curMenu].children[curItem].html+itemTagsClose);
				document.writeln("</span></td></tr></table></center></div>");
			}
			document.writeln("</div>");
		}



	}

}


// Adds a menu to the list 
function addMenu (left,top) {
		 if(type==TYPE_IE4) 
		 		 menus[menuCount]=new menu(left,top);
		 else
		 		 menus.push(new menu(left,top));

		 menuCount++;
		 
}

// Adds a submenu item to the current menu item 
function addMenuItem (html,url,background) {
		 if (type==TYPE_IE4)
		 	menus[menuCount-1].children[(menus[menuCount-1].childCount)]=new menuItem(html,url,background);
		 else
		 	 menus[menuCount-1].children.push(new menuItem(html,url,background));

		 menus[menuCount-1].childCount++;
}

// Adds an expandable submenu item to the current menu item 
function addExpandableMenuItem (html,url,background,index) {
		 // Add the menu item:
		 addMenuItem (html,url,background);
		 // Set the item's child index:
		 menus[menuCount-1].children[(menus[menuCount-1].childCount-1)].childMenuIndex=index;
}

// Makes the previous entry transparent:
function makeTransparent() {
		 menus[menuCount-1].children[(menus[menuCount-1].childCount)-1].transparent=true;
}





