// JavaScript Document

var closeINT;
var closeDelay = 500;
var closeID = null;
var openID = null;


// FUNCTIONS

function OpenNavigation(navCaller, navID){
	ProlongNavigation(navID);
	if(openID != navID){
		closeID = openID;
		CloseNavigation();
	}
	// OPEN
	document.getElementById('Navigation' + navID).style.left = FindPosX(navCaller) + "px";
	document.getElementById('Navigation' + navID).style.top =  (FindPosY(navCaller) + (window.sidebar ? 25 : 55))   + "px";
	document.getElementById('Navigation' + navID).style.display = "block";
	// SET
	openID = navID;
}

function ExtendNavigation(navID){
	document.getElementById('Navigation' + navID + 'More').style.display = "none";
	document.getElementById('Navigation' + navID + 'Extension').style.display = "block";
}

function StartCloseNavigation(navID){
	closeID = navID;
	closeINT = setInterval(CloseNavigation, closeDelay);
}

function ProlongNavigation(navID){
	if(closeID == navID){
		clearInterval(closeINT);
		closeID = null;
	}
}

function CloseNavigation(){
	// CHECK
	if(closeID == null) return false;
	// CLOSE
	document.getElementById('Navigation' + closeID).style.display = "none";
	// CLEAR
	clearInterval(closeINT);
	if(openID == closeID) openID = null;
	closeID = null;
}

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;
}

function FindPosY(obj) {
	var curtop = 0;
	if (obj.offsetParent) {
		while (obj.offsetParent) {
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y) curtop += obj.y;
	return curtop;
}
