var bLayersLoaded = false;

var isNS = (navigator.appName == "Netscape");
var isMacIE = false;
if ( (navigator.userAgent.indexOf("IE 4")  > -1) && (navigator.userAgent.indexOf("Mac")  > -1) )
	if ( navigator.userAgent.indexOf("IE 4.5") == -1 )
		isMacIE = true;
var isMacIE45 = (navigator.userAgent.indexOf("IE 4.5") != -1) && (navigator.userAgent.indexOf("Mac") != -1);
var isMac = navigator.appVersion.indexOf("Mac") != -1;
var layerRef = (isNS) ? "document" : "document.all";
var styleRef = (isNS) ? "" : ".style";
var isDOM = document.getElementById;
var isDynamic = ( (document.layers || document.all) && !isMacIE ) || isDOM;

if ( isDOM ) {
	layerRef = "document.getElementById";
	styleRef = ".style";
}

var activeMenu = -1;
var cacheID = "menuL1";
var bHome = false;

function activateMenu(menuLayerRef, xoffset,yoffset,e) {
	if ( bLayersLoaded ) {
		if ( xoffset != -1 )
		{
			if (isDynamic && activeMenu != menuLayerRef) {
				if (activeMenu != -1) hideMenu("menu" + activeMenu);
					
				menuID = "menu" + menuLayerRef;
				activeMenu = menuLayerRef;

				if ( isDOM ) {
					document.getElementById(menuID).style.top = yoffset+TopMenuYOffset+"px";
					document.getElementById(menuID).style.left = xoffset+TopMenuXOffset+"px";
				}
				else if (isNS) {
					document[menuID].top = yoffset+TopMenuYOffset;
					document[menuID].left = xoffset+TopMenuXOffset;
				} else {
					document.all[menuID].style.pixelTop =  yoffset+TopMenuYOffset;
					document.all[menuID].style.pixelLeft = xoffset+TopMenuXOffset;
				}
				if ( bHome )
					hideMenu("dFormBourse");
				showMenu(menuID);
			}
		}	
		if ( isDynamic && !isNS ) {
			window.event.cancelBubble = true;
		} else if ( e && isDOM && isNS ) {
			e.preventDefault();
			e.stopPropagation();
			
		}
	}	
}

function showMenu(layerID) {
	if ( isDOM ) {
		document.getElementById(layerID).style.visibility = "visible";
		hideSelectBoxes(document.getElementById(layerID), true);
	} else {
		eval(layerRef + '["' + layerID + '"]' + styleRef + '.visibility = "visible"');
	}
}

function hideMenu(layerID) {
	if ( isDOM ) {
		document.getElementById(layerID).style.visibility = "hidden";
		hideSelectBoxes(document.getElementById(layerID), false);
	} else {
		eval(layerRef + '["' + layerID + '"]' + styleRef + '.visibility = "hidden"');
	}
}

function killMenu(e) {
	//check if theres a menu active
	if (activeMenu > 7){
	if (activeMenu != -1) {
		menuID = "menu" + activeMenu;
		if ( isDOM || !isNS ) {
			hideMenu(menuID);
			if ( bHome )
				showMenu("dFormBourse");
			activeMenu = -1;
		}
		else {
			menuX1 = document[menuID].left;
			menuX2 = menuX1 + document[menuID].clip.right;
			menuY1 = document[menuID].top;
			menuY2 = menuY1 + document[menuID].clip.bottom;
			
			if (e.pageX < (menuX1-120) || e.pageX > menuX2 || e.pageY < menuY1 ||e.pageY > (menuY1 + 25))
			{
				if (e.pageX < menuX1 || e.pageX > menuX2 || e.pageY < menuY1 ||e.pageY > menuY2) {
					hideMenu(menuID);
					if ( bHome )
						showMenu("dFormBourse");
					activeMenu = -1;
				}
			}
		}
	}
	}
	else {
		if (activeMenu != -1) {
			menuID = "menu" + activeMenu;
			if ( isDOM || !isNS ) {
				hideMenu(menuID);
				if ( bHome )
					showMenu("dFormBourse");
				activeMenu = -1;
			}
			else {
				menuX1 = document[menuID].left;
				menuX2 = menuX1 + document[menuID].clip.right;
				menuY1 = document[menuID].top;
				menuY2 = menuY1 + document[menuID].clip.bottom;
				
				if (e.pageX < menuX1 || e.pageX > menuX2 || e.pageY < (menuY1-0) ||e.pageY > menuY2) {
					hideMenu(menuID);
					if ( bHome )
						showMenu("dFormBourse");
					activeMenu = -1;
				}
			}
		}
	}  
}

function init() {

	if (isDynamic) {
		if ( isDOM && isNS )
			document.onmouseout = killMenu;
		else if (isNS) {
			document.captureEvents(Event.MOUSEMOVE); 
			document.onmousemove = killMenu;
		} else
			document.onmouseover = killMenu;
	}
}
