// menu.js
// Simple drop-down menu
var curMenuID = "";
var oldMenuClass = "";
var menuTimer = null;

// Show the specified menu
function popMenu(link) {
	// Hide the current menu
	clearTimeout(menuTimer);
	hideMenu();
	
	// Highlight the menu item
	//oldMenuClass = link.className;
	//if(link.className) link.className += "; ";
	//link.className += "active";
	
	// Get the ID for the new menu
	curMenuID = link.id;
	var name = curMenuID + "Menu";
	var menu = document.getElementById(name);
	if(!menu) return;
	
	// Show the new menu
	menu.style.display = "block";
	menu.style.left = (link.offsetLeft) + "px";
	menu.style.top = (link.offsetTop + link.offsetHeight - 1) + "px";
}

// Cancel the current menu (hide it...soon)
function cancelMenu() {
	var menu = document.getElementById(curMenuID + "Menu");
	if(!menu) return;
	
	menuTimer = setTimeout("hideMenu()", 500);
}

// Hide the currently displayed menu
function hideMenu() {
	var link = document.getElementById(curMenuID);
	//if(link) link.className = oldClassName;
	
	var menu = document.getElementById(curMenuID + "Menu");
	if(menu) menu.style.display = "none";
	
	curMenuID = oldClassName = "";
}

// Keep track of when the mouse cursor is in a menu
function enterSubmenu() { clearTimeout(menuTimer) }
function exitSubmenu() { cancelMenu() }
