/**
*	NEF_javascript.js
*	
*   Javascript functions for NEF
*
*	@author John Michaelsen
*	
*/


var submenus = new Array();
var submenus2 = new Array();
var myTimer = null;
var timerRunning = true;
var menu_loaded = false;

function setVisible(elementId, visible) {
	var element = document.getElementById(elementId);
	if(element != null) {
		if(visible == true) {
			element.style.visibility = 'visible';
		} else {
			element.style.visibility = 'hidden';
		}
	}
}

function startTimer() {
	//alert(menu_loaded);
	if(menu_loaded == true) {
		myTimer = setTimeout('hideAllSubMenus()',1000);
		timerRunning = true;
	}
}

function stopTimer() {
	if(menu_loaded == true) {
		if (timerRunning) {
			clearTimeout(myTimer);
		}
	}
}

function showSubMenu(elementId) {
	if(menu_loaded == true) {
		hideAllSubMenus();
		setVisible(elementId, true);
		stopTimer();
	}
}

function showSubMenu2(elementId) {
	if(menu_loaded == true) {
		setVisible(elementId, true);
		stopTimer();
	}
}

function hideAllSubMenus() {
	if(menu_loaded == true) {
		for(var element in submenus) {
			setVisible(submenus[element], false);
		}
		for(var element in submenus2) {
			setVisible(submenus2[element], false);
		}
	}
}


function moveElementTo(elementId, posx, posy) {
	var element = document.getElementById(elementId);
	if(element != null) {
		element.style.left = '' + posx + 'px';
		element.style.top = '' + posy + 'px';
	}
}

function getPosX(elementId) {
	var obj = document.getElementById(elementId);
	if(obj != null) {
		var curleft = 0;
		if (obj.offsetParent) {
			while (obj.offsetParent) {
				curleft += obj.offsetLeft
				obj = obj.offsetParent;
			}
		}
		else if (obj.x) {
			curleft += obj.x;
		}
		return curleft;
	}
	return 0;
}

function getPosY(elementId) {
	var obj = document.getElementById(elementId);
	if(obj != null) {
		var curtop = 0;
		if (obj.offsetParent) {
			while (obj.offsetParent) {
				curtop += obj.offsetTop
				obj = obj.offsetParent;
			}
		}
		else if (obj.y) {
			curtop += obj.y;
		}
		return curtop;
	}
	return 0;
}