function getPosOffset(what, offsettype){
	var totaloffset=(offsettype=="left")? what.offsetLeft : what.offsetTop;
	var parentEl=what.offsetParent;
	while (parentEl!=null){
		totaloffset=(offsettype=="left")? totaloffset+parentEl.offsetLeft : totaloffset+parentEl.offsetTop;
		parentEl=parentEl.offsetParent;
	}
	return totaloffset;
}


var menuHideTimeoutId=undefined;
var activeMenu=undefined;

function showMenu(referer,menuId) {
	hideNow();
	activeMenu=$(menuId);
	activeMenu.onmouseover=cancelHide;
	activeMenu.onmouseout=hideMenu;	
	activeMenu.style.left=getPosOffset(referer, "left")+80+"px";
	activeMenu.style.top=getPosOffset(referer, "top")+"px";
	activeMenu.style.visibility='visible';
}

function cancelHide() {
	clearTimeout(menuHideTimeoutId);
}

function hideNow() {
	if (activeMenu!=undefined) activeMenu.style.visibility='hidden';
	clearTimeout(menuHideTimeoutId);
}

function hideMenu(referer,menuId) {
	menuHideTimeoutId=setTimeout("activeMenu.style.visibility='hidden'",500)
	//$(menuId).style.visibility='hidden';
}