
var ns_HideMenuTimer = null;
var ns_DHFlag = null;
var ns_Start = null;
var ns_ActiveMenu = null;

function NS_clearTimeout() {
	if (ns_HideMenuTimer) clearTimeout(ns_HideMenuTimer);
	ns_HideMenuTimer = null;
	ns_DHFlag = false;
}

function NS_startTimeout() {
	if( ns_ActiveMenu ) {
		ns_Start = new Date();
		ns_DHFlag = true;
		ns_HideMenuTimer = setTimeout("NS_DoHide()", 150);
	}
}

function NS_DoHide() {
	if (!ns_DHFlag || !ns_ActiveMenu) return;
	var elapsed = new Date() - ns_Start;
	if (elapsed < 150) {
		ns_HideMenuTimer = setTimeout("NS_DoHide()", 150+100-elapsed);
		return;
	}
	ns_DHFlag = false;
	ns_ActiveMenu.style.left = "-9999px";
	try { nsShowSelectBoxes() } catch (e) { };
	ns_ActiveMenu = 0;
}

function NS_showMenu(menu, x, y, unused, imgname) {
	if (typeof (menu) == "undefined") return;
	if (!menu) return;
	var oMenu = document.getElementById(menu);
	if (ns_ActiveMenu) {
		if (ns_ActiveMenu.id == menu) {
			NS_clearTimeout();
		} else {
			ns_DHFlag = false;
			ns_ActiveMenu.style.left = "-9999px";
			ns_ActiveMenu = 0;
		}
	}
	if (oMenu) {
		oMenu.style.left = x + offsetXWithinBody(document.getElementById(imgname));
		oMenu.style.top = y + offsetYWithinBody(document.getElementById(imgname));
		ns_ActiveMenu = oMenu;
		try { nsHideSelectBoxes(l) } catch (e) { };
	}
}

function offsetXWithinBody(oNode) {
	var x = 0;
	while (oNode.offsetParent && oNode.tagName != "BODY") {
		x += oNode.offsetLeft
		oNode = oNode.offsetParent;
	}
	return x;
}
function offsetYWithinBody(oNode) {
	var y = 0;
	while (oNode.offsetParent && oNode.tagName != "BODY") {
		y += oNode.offsetTop
		oNode = oNode.offsetParent;
	}
	return y;
}
