if (!document.getElementById){document.getElementById = function() { return null; }}
var currentOpenItems = new Array();//Retains Open Items
var openMenuTimer;

function hidemenutimout(){
	setTimeout(hideMenu, 0.3 * 1000);
}

function hideMenu(){
	for (i = 0; i < currentOpenItems.length; i++){
		currentOpenItems[i].style.visibility = 'hidden';
	}
}

if (navigator.userAgent.indexOf("MSIE")>=0) {
	document.onmousedown = hidemenutimout;
}
else {
	document.addEventListener("mousedown", hidemenutimout, true);
}

function loaditems(parentItem,depth,offsetx,offsety){
	var maxwidth = 130;//default width
	for (var i = 0; i < 50; i++){
		itemName = parentItem + '_' + i;
		//alert('item ' + itemName);
		if ((linkItem=document.getElementById(itemName)) == null){
			//alert('no ' + itemName);
			break;
		}
		
		//Get Max Link Width So Far
		if (depth != 0){
			if (maxwidth < linkItem.offsetWidth){
				maxwidth = linkItem.offsetWidth
			}
		}
		
		//alert(linkItem.innerHTML);
		linkItem.onmouseover = function(){ this.hideChildren();this.showMenu(); }
		
		linkItem.hideChildren = function(){
			for (i = depth; i < depth + 30; i++){
				if (currentOpenItems == null || currentOpenItems[i] == null){
					//alert(currentOpenItems[depth].id);		
					break;
				}
				currentOpenItems[i].style.visibility = "hidden";
			}
		}
		
		linkItem.onmouseout = function() { 	
			openMenuTimer = setTimeout(hideMenu, 0.6 * 1000);
		}
		
		linkItem.showMenu = function(){ 
			clearTimeout(openMenuTimer);
			//alert(this.id.replace('item','dropmenu'));
			dropMenu = document.getElementById(this.id.replace('item','dropmenu'));
			if (dropMenu != null){
				
				function getPageOffsetLeft(el) {
					var x;
					// Return the x coordinate of an element relative to the page.
					x = el.offsetLeft;
					if (el.offsetParent != null)
						x += getPageOffsetLeft(el.offsetParent);
					return x;
				}
							
				function getPageOffsetTop(el) {
					var y;
					// Return the y coordinate of an element relative to the page.
					y = el.offsetTop;
					if (el.offsetParent != null)
						y += getPageOffsetTop(el.offsetParent);
					return y;
				}
				
				if (depth == 0){
					x = getPageOffsetLeft(this) + offsetx + "px";
					y = getPageOffsetTop(this) + this.offsetHeight + offsety + 4 + "px";
				}
				else{
					x = this.offsetLeft + this.offsetWidth + 1 + "px";
					y = this.offsetTop + "px";
				}
				
				dropMenu.style.left = x;
				dropMenu.style.top = y;
				dropMenu.style.visibility = "visible";
				
				currentOpenItems[depth] = dropMenu;
			}//end if
		}
		//end show menu function	
		
		if (depth != 0){
			parentDropMenu = document.getElementById(itemName.substring(0,itemName.lastIndexOf('_')).replace('item','dropmenu'))
			//alert('------' + itemName.substring(0,itemName.length-2))
			parentDropMenu.style.width = maxwidth + "px";
		}
		
		//Load Child Items
		loaditems(itemName,depth+1,offsetx,offsety);
	}
	//end forloop
}

window.onload = function(){
	loaditems('item',0,0,0);
}