var CurrentEnvironment = new Environment("CurrentEnvironment");

var ActiveMenu = null;
var ActiveMenuTd = null;
var bIsOverLayer = 0;
var MainTmr = null;

//Coloque aqui os IDs e a posição (x relativo - [distância do centro]) dos layers de submenus.

//Declarando globais
for (iL = 0; iL < ArrLayers.length; iL ++) {
	eval("window." + ArrLayers[iL][0] + " = null");
}

function inicio() {
	//Instanciando objetos
	for (iL = 0; iL < ArrLayers.length; iL ++) {
		eval(ArrLayers[iL][0] + " = new Layer(\"" + ArrLayers[iL][0] + "\", CurrentEnvironment)");
		eval(ArrLayers[iL][0] + ".setRelativeX(" + ArrLayers[iL][1] + ")");
	}
	arrangeRelativeLayers(CurrentEnvironment);
}

onresize = function() {
	arrangeRelativeLayers(CurrentEnvironment);
}

function hideAll() {
	if (ArrColisions) {
		for (i = 0; i < ArrColisions.length; i ++) {
			if (CurrentEnvironment.getObject(ArrColisions[i][1])) {
			        CurrentEnvironment.getObject(ArrColisions[i][1]).style.visibility = "visible";
	                }
		}
	}
	//clearTimeout(MainTmr);
	for (iL = 0; iL < ArrLayers.length; iL ++) {
		if (ArrLayers[iL][0].substring(0,5) == "SMenu") {
			if (eval(ArrLayers[iL][0])) {
			 eval(ArrLayers[iL][0] + ".setVisibility(0)");
			}
		}
	}
	if (ActiveMenuTd != null && sStaticMenu != ActiveMenuTd.id) {
		ActiveMenuTd.bgColor = sBgColor;
		ActiveMenuTd.style.color = sTextColor;
	}
}

function mouseOvr(src, clrOver, clrTextOver, sMenu) {
	src.style.cursor = 'hand';
	src.bgColor = clrOver;
	src.style.color = clrTextOver;
	bIsOverLayer = 1;
	if (sMenu != "sub") {
		if (ActiveMenu != eval(sMenu)) hideAll();
		if (sMenu != null) {
			if (ArrColisions) {
				for (i = 0; i < ArrColisions.length; i ++) {
					if (ArrColisions[i][0] == sMenu) {
						if (CurrentEnvironment.getObject(ArrColisions[i][1])) {
						        CurrentEnvironment.getObject(ArrColisions[i][1]).style.visibility = "hidden";
					        }
					}
				}
			}
			
			ActiveMenu = eval(sMenu);
			if (eval(sMenu)) {
				ActiveMenu.setVisibility(1);
			}
				MainTmr = setTimeout("closeMenu()", 1000);
				if (src.id != "") ActiveMenuTd = src;
		} else {
			hideAll();
		}
	}
}

function closeMenu() {
	if (!bIsOverLayer) {
		hideAll();
	} else {
		clearTimeout(MainTmr);
		MainTmr = setTimeout("closeMenu()", 1000);
	}
}

function mouseOut(src) {
	bIsOverLayer = 0;
	sBg = arguments.length > 1 ? arguments[1] : sBgColor;
	sTxt = arguments.length > 2 ? arguments[2] : sSubMenuTextColor;
	SMenu = eval(src.id);
		if (src.id == "") {
			src.bgColor = sBg;
			src.style.color = sTxt;
		} else if (eval(src.id) && typeof(SMenu.getName) == "undefined") {
			src.bgColor = sBg;
			src.style.color = sTextColor;
			clearTimeout(MainTmr);
			ActiveMenu == null;		
		} else if (eval(src.id) && ActiveMenu) {
			if (ActiveMenu.getName() == src.id) {
				clearTimeout(MainTmr);
				ActiveMenu == null;
			}
		}

}

function arrangeRelativeLayers(Environment) {
	var iContentBase;
	for (i = 0; i <  Environment.layers.length; i ++) {
		//if (Environment.layers[i].getRelativeX() != null) {
			if (Environment.getInnerWidth() < 780) {
				iContentBase = 9;
			} else {
                            iContentBase = (Environment.getInnerWidth() - 762) / 2;
			}
                        /*
			if (Environment.getInnerWidth() < 780) {
				iContentBase = 390;
			} else {
				iContentBase = Environment.getInnerWidth() / 2;
			}
			*/
			iNewX = iContentBase + Environment.layers[i].getRelativeX();
			Environment.layers[i].setX(iNewX);
		//}

	}
}
