var mouseOutDelay = 300;
var bMenuOn = false;
var PopupMenuTimeout = null;
var lastLayer = null;

function XYPoint(x, y) {
	this.x = x;
	this.y = y;
}

function absoluteTopLeft(obj) {
	var el = obj;
	var p = new XYPoint(0,0);
	while (el && el.tagName != 'BODY') {
		p.x += parseInt(el.offsetLeft);
		p.y += parseInt(el.offsetTop);
		el = el.offsetParent;
	}
	return p;
}

function absoluteBottomLeft(obj) {
	var el = obj;
	var p = absoluteTopLeft(obj);
	p.y = p.y + parseInt(obj.offsetHeight);
	return p;
}
	
function menuOver_pd(lr, evnt, d)
{
	var fmnu;
//	alert(lr);
	var el;
	clearMenuTimeout();
	if (document.all) {
		el = evnt.srcElement;
		fmnu = document.all(lr);
	} else {
		//netscape
		el = d;
		if (document.getElementById) {
			fmnu = document.getElementById(lr);
		} else {
			fmnu = document.layers[lr];
		}
	}
	if (!fmnu) return;
	//alert(fmnu);		
	if (document.layers) {
		if (fmnu.visibility != 'show') {
			fmnu.top = evnt.pageY + 5;
			fmnu.left = evnt.pageX - 10;
			fmnu.visibility = 'show';
		}	
	} else {
		if (fmnu.style.visibility == 'hidden') {
			var p = absoluteBottomLeft(el);
			fmnu.style.top = p.y + 5;
			fmnu.style.left = p.x;
			//if (fmnu.style.pixelWidth) fmnu.style.pixelWidth = el.offsetWidth;
			fmnu.style.visibility = 'visible';
		}
	}		

	if (lr != lastLayer) {
		hideTheLayer(lastLayer);
		lastLayer = lr;	
	}	
}	

function menuOver(lr, evnt) {
	var fmnu;
	//window.status = "Over";
	//alert(lr);
	clearMenuTimeout();
	if (document.all) {
		fmnu = document.all(lr);
	} else {
		if (document.getElementById) {
			fmnu = document.getElementById(lr);
		} else {
			fmnu = document.layers[lr];
		}	
	}		
	if (document.layers) {
		if (fmnu.visibility != 'show') {
			fmnu.top = evnt.pageY - 10;
			fmnu.visibility = 'show';
		}	
	} else {
		if (fmnu.style.visibility == 'hidden') {
			fmnu.style.top = evnt.clientY - 10;
			fmnu.style.visibility = 'visible';
		}
	}		

	if (lr != lastLayer) {
		hideTheLayer(lastLayer);
		lastLayer = lr;	
	}	
}

function menuOut(lr) {
//debugger;
	bMenuOn = false;
	//window.status = "------- out";		
	//hideMenuLayer(lr);
	//alert('Out');
	if (PopupMenuTimeout == null) {
		PopupMenuTimeout = window.setTimeout("hideMenuLayer(" + "'" + lr + "')", mouseOutDelay);
	}	
}

function showMenuLayer(lr) {
}

function hideMenuLayer(lr) {
	if (!bMenuOn) {
		//window.status = "hide";
		hideTheLayer(lr);
	}	
	clearMenuTimeout();
}

function hideTheLayer(lr)
{
	if (lr)
	{
		if (document.all)
		{
			if (document.all(lr)) 
			{
				document.all(lr).style.visibility = 'hidden';
			} 
		}
		else
		{
			if (document.getElementById)
			{	
				document.getElementById(lr).style.visibility = 'hidden';
			}
			else
			{	
				document.layers[lr].visibility = 'hide';
			}	
		}
	}
}

function menuLinkOver(el) {
	if (document.all) {
		el.style.textDecoration='underline';
	}
}		

function clearMenuTimeout() {
		window.clearTimeout(PopupMenuTimeout);
		PopupMenuTimeout = null;
}

function menuLinkOut(el) {
	if (document.all) {
		el.style.textDecoration='';
	}
}			
