var previousSubMenu = null;
var closeInterval;

function showSubMenu(id){
	var submenu = document.getElementById("subMenu" + id);
	
	clearSubMenuHide();
	
	if(previousSubMenu != null){
		hideSubMenu();
	}
	
	if(submenu != undefined && submenu != null){
		submenu.style.visibility = "visible";
		previousSubMenu = submenu;
		submenu.style.left = moveXbySlicePos (0, document.getElementById("link" + id)) + "px";
	}
}

function delayedSubMenuHide(){
	closeInterval = setTimeout('hideSubMenu()', 500);
}

function hideSubMenu(){
	if(previousSubMenu != undefined && previousSubMenu != null){
		previousSubMenu.style.visibility = "hidden";
		previousSubMenu = null;	
	}
}

function clearSubMenuHide(){
	clearTimeout(closeInterval);
}

function moveXbySlicePos (x, linka) { 
	var onWindows = navigator.platform ? navigator.platform == "Win32" : false;
	var macIE45 = document.all && !onWindows && getExplorerVersion() == 4.5;
	var par = linka;
	var lastOffset = 0;
	
	while(par && par.id != "page"){
		if(par.leftMargin && !onWindows) {
			x += parseInt(par.leftMargin);
		}
		
		// IE / Mozilla
		if((par.offsetLeft != lastOffset) && par.offsetLeft) {
			x += parseInt(par.offsetLeft);
		}
		
		if(par.offsetLeft != 0) {
			lastOffset = par.offsetLeft;
		}
		
		par = macIE45 ? par.parentElement : par.offsetParent;
	}
	
	return x;
}
