/* seb's css menu ver 1.03	*/
/* SDF 20040924				*/


	var currentMenu = null;
	var mytimer = null;
	var timerOn = false;
	var opera = window.opera ? true : false;
	
	if (!document.getElementById)
		document.getElementById = function() { return null; }
	
function initialiseMenu(menu, starter, root)
{
	var leftstarter = false;

	if (menu == null || starter == null) return;
		currentMenu = menu;

	starter.onmouseover = function()
	{
		if (currentMenu)
		{
			if (this.parentNode.parentNode!=currentMenu)
			{
				currentMenu.style.display = "none";
			}
	
			if (this.parentNode.parentNode==root)
			{
				tempCurrentMenu = currentMenu;
				while (tempCurrentMenu.parentNode.parentNode!=root)
				{
					tempCurrentMenu.parentNode.parentNode.style.display = "none";
					tempCurrentMenu = tempCurrentMenu.parentNode.parentNode;
				}
			}
			currentMenu = null;
			this.showMenu();
		}
	}
	

	
	menu.onmouseover = function()
	{
		if (starter.className != "starter")	
			if (starter.className == "submenu")
				starter.className = "submenu menuSelect";
			else
				starter.className = "menuSelect";
			
			//	starter.style.backgroundColor = "#B8C7CC";
		if (currentMenu)
		{
			currentMenu = null;
			this.showMenu();
		}
	}	
			
		
	starter.showMenu = function()
	{
		if (!opera)
		{
			//this.focus();  //removes focus from form fields to hide blinking cursor that shows through
			
			if (this.parentNode.parentNode == root)
			{						
				menu.style.left	= this.offsetLeft + "px";
				menu.style.top	= this.offsetTop + this.offsetHeight + "px";
			}
			else
			{
			 	if ((findPosX(this) + this.offsetWidth + menu.offsetWidth) > document.body.offsetWidth)
				{
					menu.style.left = (this.offsetLeft - menu.offsetWidth) + "px";
			 	}
				else
				{
					menu.style.left = this.offsetLeft + this.offsetWidth + "px";
				}
			 	menu.style.top = this.offsetTop - 1+ "px";
			}
		}
		else
		{
			if (this.parentNode.parentNode == root)
			{
				menu.style.left = this.offsetLeft  + 117 + "px";
				menu.style.top = this.offsetHeight + 145 + "px";
			}
			else
			{
			 	if ((findPosX(this) + this.offsetWidth + menu.offsetWidth) > document.body.offsetWidth)
				{
					menu.style.left = (-menu.offsetWidth) + "px";
			 	}
				else
				{
					menu.style.left = this.offsetWidth + "px";
				}
			 	menu.style.top = this.offsetTop - 1 + "px";
			}
	
		}
		menu.style.display = "block";
		currentMenu = menu;
	}

		
	function findPosX(obj)
	{
		var curleft = 0;
		if (obj.offsetParent)
		{
			while (obj.offsetParent)
			{
				curleft += obj.offsetLeft;
				obj = obj.offsetParent;
			}
		}
		else if (obj.x)
			curleft += obj.x;
			
		return curleft;
	}
	
	
	starter.onfocus = function()
	{
		starter.onmouseover();
	}
	
		
	menu.showMenu = function()
	{
		menu.style.display = "block";
		currentMenu = menu;
		stopTime();
	}
	
	
	menu.hideMenu = function()
	{
		if (!timerOn)
		{
			//	alert(this.id);
			mytimer = setInterval("killMenu('" + this.id + "', '" + root.id + "');", 200); //set time before inactive menu is closed - 2000=2secs 3000=3secs, etc //
			timerOn = true;
			for (var x=0;x<menu.childNodes.length;x++)
			{
				if (menu.childNodes[x].nodeName=="LI")
				{
					if (menu.childNodes[x].getElementsByTagName("UL").length>0)
					{
						menuItem = menu.childNodes[x].getElementsByTagName("UL").item(0);
						menuItem.style.display = "none";
					}
				}
			}
		}
	}
	
	
	menu.onmouseout = function(event)
	{
		// 	starter.style.backgroundColor = "";
		if (starter.className != "starter")
			if (starter.className == "submenu menuSelect")
				starter.className = "submenu";
			else
				starter.className = "";
		this.hideMenu();
	}
	
	
	starter.onmouseout = function()
	{
		for (var x=0; x<menu.childNodes.length; x++)
		{
			if (menu.childNodes[x].nodeName=="LI")
			{
				if (menu.childNodes[x].getElementsByTagName("UL").length > 0)
				{
					menuItem = menu.childNodes[x].getElementsByTagName("UL").item(0);
					menuItem.style.display = "none";
				}
			}
		}
		
		menu.style.display = "none";
		//menu.hideMenu();
	}
	
	
//	starter.onclick = starter.onmouseout;
}


	
	
// hide entire menu block
function killMenu(menu, root)
{
	var menu = document.getElementById(menu);
	var root = document.getElementById(root);
	menu.style.display = "none";
	for (var x=0;x<menu.childNodes.length;x++)
	{
		if (menu.childNodes[x].nodeName=="LI")
		{
			if (menu.childNodes[x].getElementsByTagName("UL").length>0)
			{
				menuItem = menu.childNodes[x].getElementsByTagName("UL").item(0);
				menuItem.style.display = "none";
			}
		}
	}
	while (menu.parentNode.parentNode!=root)
	{
		menu.parentNode.parentNode.style.display = "none";
		menu = menu.parentNode.parentNode;
	}
	stopTime();
}

	
	
	
function stopTime()
{
	if (mytimer)
	{
	 	 clearInterval(mytimer);
		 mytimer = null;
		 timerOn = false;
	}
} 

	
	

function getMenus(elementItem, root)
{
	var selectedItem;
	var menuStarter;
	var menuItem;
	//alert("in getmenus");
	//alert(elementItem.childNodes.length);
	for (var x=0;x<elementItem.childNodes.length;x++) {
		//alert(elementItem.childNodes[x].nodeName);
		if (elementItem.childNodes[x].nodeName=="LI") {

			//alert("Yes!");
			if (elementItem.childNodes[x].getElementsByTagName("UL").length>0) {
				//alert("set up");
				menuStarter = elementItem.childNodes[x].getElementsByTagName("A").item(0);
				menuItem = elementItem.childNodes[x].getElementsByTagName("UL").item(0);
				getMenus(menuItem, root);
				initialiseMenu(menuItem, menuStarter, root);
			}
		}
	}
	//return true;
}


window.onload = function()
		{
			//alert("loaded");
			var root = document.getElementById("m");
			//alert("About to execute getmenus");
			getMenus(root, root);
			
		}