/*	Pull-down Menu Library
	Author: Tina McDuffie
	Copyright 2002 Tina McDuffie.  All rights reserved. 
	
	Description: this library contains the functions
	that provide all pull-down menu functionality.
	The constructor functions, method definitions, etc.
	for easily customizing the menus can be found in
	the menuLib.js file.								*/
	
var activeMenus = new Array()
var timer = null
var previousElement = null
var subLevel = 0;

function hide(elementId) {
	//alert("Current value for: " + previousElement + " " + elementId)
	if (elementId != null)
	{
		if (document.getElementById) {
			document.getElementById(elementId).style.visibility = "hidden"
		} else if (document.layers) {
			document.layers[elementId].visibility = "hide"
		} else if (document.all) {
			document.all[elementId].style.visibility = "hidden"
		}
	}
	previousElement = null
}

function hideAll() {
	if(activeMenus.length != 0) {
		for (i=activeMenus.length-1; i>=0;  i--) {
			hide(activeMenus.pop())
		}
	}
	previousElement = null
}

function show(elementId) {
	if (document.getElementById) {
		document.getElementById(elementId).style.visibility = "visible"
	} else if (document.layers) {
		document.layers[elementId].visibility = "show"
	} else if (document.all) {
		document.all[elementId].style.visibility = "visible"
	}
}

function startTimer(hasSubmenu, isMainMenuItem, subMenuLevel) {
	
		//alert("hasSubmenu " + hasSubmenu + "  isMainMenuItem " + isMainMenuItem + "  subMenuLevel  " + subMenuLevel)
	if (timer != null) {
		clearTimeout(timer)
	}
	if (hasSubmenu == false && isMainMenuItem && subMenuLevel == 0)
	{
	
		hideAll()
	}
		
	timer = setTimeout("hideAll()", 3000)
}

function pullDown(menuId, level) {
	subLevel = level
	if (timer != null) {
		clearTimeout(timer)
	}
	if (level == 1) {
		hideAll()
	}
	//alert ("level = " + level + "  previousElement = " + previousElement)
	if (level == 2 && previousElement == null) {
		previousElement = menuId
	}
	else
	{
		if(level == 2 && previousElement != null){
		hide(previousElement)
		previousElement = menuId
		}
	}
	show(menuId)
	activeMenus[activeMenus.length] = menuId
}


function hideSub(menuLevel) {
	/*if (timer != null) {
		clearTimeout(timer)
	}*/
	/*if (subLevel == 1) {
		hideAll()
	}*/
	//alert ("level = " + subLevel + "  previousElement = " + previousElement)
	//alert("menuLevel is : "  + menuLevel)
	if(subLevel == 2 && previousElement != null && menuLevel == 2){
		hide(previousElement)
		
	}
	else
	{
		if (timer != null) {
			clearTimeout(timer)
		}
		timer = setTimeout("hideAll()", 3000)
	}
	
	
}

