// JavaScript Document
oTimer=null;

function onInit(){
	/** Se obtienen referencias a los objetos encargados de controlar el cambio de item
	 * desplegado en la zona de promo
	 */
	var oLinkPromo0=document.getElementById("linkPromo0");
	var oLinkPromo1=document.getElementById("linkPromo1");
	var oLinkPromo2=document.getElementById("linkPromo2");
	var oLinkPromo3=document.getElementById("linkPromo3");
	
	/** Se añaden funciones a dichos objetos
	 */
	if(document.addEventListener){
		oLinkPromo0.addEventListener("click", function(){
													doChangePromo(0);
												  }, false);
		oLinkPromo1.addEventListener("click", function(){
													doChangePromo(1);
												  }, false);
		oLinkPromo2.addEventListener("click", function(){
													doChangePromo(2);
												  }, false);
		oLinkPromo3.addEventListener("click", function(){
													doChangePromo(3);
												  }, false);
	} else {
		/** Para ie
		 */
		oLinkPromo0.attachEvent("onclick", function(){
													doChangePromo(0);
											   });
		
		oLinkPromo1.attachEvent("onclick", function(){
													doChangePromo(1);
											   });
		
		oLinkPromo2.attachEvent("onclick", function(){
													doChangePromo(2);
											   });
		
		oLinkPromo3.attachEvent("onclick", function(){
													doChangePromo(3);
											   });		
	}	 
	
	/** Activa la promo que se quiera, para la primera vez. En realidad, sin esto,
	 * también funciona, pero este código, me permite tener un control extra del
	 * despliegue de promos. Pero sobre todo, se ha puesto en hard code (dentro del
	 * html) que se abra una determinada promo, para que en caso de que esta orden,
	 * en javascript, no funcione, la otra me asegure que se va a desplegar alguna promo
	 */
	doChangePromo(0);
	
	/** Se obtienen referencias a los elementos que son items del menú de Que Hacemos?
	 */
	var oMenuLink0=document.getElementById("menuLink0");
	var oMenuLink1=document.getElementById("menuLink1");
	var oMenuLink1a=document.getElementById("menuLink1a");
	var oMenuLink2=document.getElementById("menuLink2");
	var oMenuLink3=document.getElementById("menuLink3");
	var oMenuLink4=document.getElementById("menuLink4");
	var oMenuLink5=document.getElementById("menuLink5");
	var oMenuLink6=document.getElementById("menuLink6");
	var oMenuLink7=document.getElementById("menuLink7");
	var oMenuLink8=document.getElementById("menuLink8");
	var oMenuLink9=document.getElementById("menuLink9");
	
	/** Se añaden funciones a dichos objetos
	 */
	if(document.addEventListener){
		oMenuLink0.addEventListener("click", function(){
													doChangeMenuDetails("0");
												 }, false);
		oMenuLink1.addEventListener("click", function(){
													doChangeMenuDetails("1");
												 }, false);
		oMenuLink1a.addEventListener("click", function(){
													doChangeMenuDetails("1a");
												 }, false);
		oMenuLink2.addEventListener("click", function(){
													doChangeMenuDetails("2");
												 }, false);
		oMenuLink3.addEventListener("click", function(){
													doChangeMenuDetails("3");
												 }, false);
		oMenuLink4.addEventListener("click", function(){
													doChangeMenuDetails("4");
												 }, false);
		oMenuLink5.addEventListener("click", function(){
													doChangeMenuDetails("5");
												 }, false);
		oMenuLink6.addEventListener("click", function(){
													doChangeMenuDetails("6");
												 }, false);
		oMenuLink7.addEventListener("click", function(){
													doChangeMenuDetails("7");
												 }, false);
		oMenuLink8.addEventListener("click", function(){
													doChangeMenuDetails("8");
												 }, false);
		oMenuLink9.addEventListener("click", function(){
													doChangeMenuDetails("9");
												 }, false);
	} else {
		/** Para ie
		 */
		oMenuLink0.attachEvent("onclick", function(){
													doChangeMenuDetails("0");
											   });
		oMenuLink1.attachEvent("onclick", function(){
													doChangeMenuDetails("1");
											   });
		oMenuLink1a.attachEvent("onclick", function(){
													doChangeMenuDetails("1a");
											   });
		oMenuLink2.attachEvent("onclick", function(){
													doChangeMenuDetails("2");
											   });
		oMenuLink3.attachEvent("onclick", function(){
													doChangeMenuDetails("3");
											   });
		oMenuLink4.attachEvent("onclick", function(){
													doChangeMenuDetails("4");
											   });
		oMenuLink5.attachEvent("onclick", function(){
													doChangeMenuDetails("5");
											   });
		oMenuLink6.attachEvent("onclick", function(){
													doChangeMenuDetails("6");
											   });
		oMenuLink7.attachEvent("onclick", function(){
													doChangeMenuDetails("7");
											   });
		oMenuLink8.attachEvent("onclick", function(){
													doChangeMenuDetails("8");
											   });
		oMenuLink9.attachEvent("onclick", function(){
													doChangeMenuDetails("9");
											   });
	}	 
}

/** Función encargada de cambiar la promo, de acuerdo a la selección
 */
function doChangePromo(valor){
	var oLinkPromo0=document.getElementById("linkPromo0");
	var oLinkPromo1=document.getElementById("linkPromo1");
	var oLinkPromo2=document.getElementById("linkPromo2");
	var oLinkPromo3=document.getElementById("linkPromo3");
		
	var oPromo0=document.getElementById("promo0");
	var oPromo1=document.getElementById("promo1");
	var oPromo2=document.getElementById("promo2");
	var oPromo3=document.getElementById("promo3");		
	
	/** Se pone en normalidad a todos los items
	 */
	oLinkPromo0.className=	oLinkPromo0.className.replace(/iconoSuperiorSeleccionado/, "")
												 .replace(/\s+$/, "");
	oLinkPromo1.className=	oLinkPromo1.className.replace(/iconoSuperiorSeleccionado/, "")
												 .replace(/\s+$/, "");
	oLinkPromo2.className=	oLinkPromo2.className.replace(/iconoSuperiorSeleccionado/, "")
												 .replace(/\s+$/, "");
	oLinkPromo3.className=	oLinkPromo3.className.replace(/iconoSuperiorSeleccionado/, "")
												 .replace(/\s+$/, "");
	
	/** Se oculta a todas las promos
	 */
	oPromo0.className="promoOculta";
	oPromo1.className="promoOculta";
	oPromo2.className="promoOculta";
	oPromo3.className="promoOculta";
												 
	/** Se pone el efecto adecuado al actual item seleccionado
	 */
	switch(valor){
		case 0:
				oLinkPromo0.className+=" iconoSuperiorSeleccionado";	
				oPromo0.className="";
				break;
		case 1:
				oLinkPromo1.className+=" iconoSuperiorSeleccionado";	
				oPromo1.className="";
				break;
		case 2:
				oLinkPromo2.className+=" iconoSuperiorSeleccionado";	
				oPromo2.className="";
				break;
		case 3:
				oLinkPromo3.className+=" iconoSuperiorSeleccionado";	
				oPromo3.className="";
				break;
	}
}

/** Función encargada de cambiar el despliegue del item de menú
 */
function doChangeMenuDetails(valor){
//	/** Detiene cualquier timer que exista, para ocultar el detalle del item de menú
//	 */
//	doStopTryToHideMenuDetails();
	
	var oMenuLink0=document.getElementById("menuLink0");
	var oMenuLink1=document.getElementById("menuLink1");
	var oMenuLink1a=document.getElementById("menuLink1a");
	var oMenuLink2=document.getElementById("menuLink2");
	var oMenuLink3=document.getElementById("menuLink3");
	var oMenuLink4=document.getElementById("menuLink4");
	var oMenuLink5=document.getElementById("menuLink5");
	var oMenuLink6=document.getElementById("menuLink6");
	var oMenuLink7=document.getElementById("menuLink7");
	var oMenuLink8=document.getElementById("menuLink8");
	var oMenuLink9=document.getElementById("menuLink9");
	
	/** Se obtienen referencias a los objetos que permiten denotar la extensión del
	 * item de menú
	 */
	var oMenuExtension=document.getElementById("menuLinkExtension");
	var oMenuExtensionLast=document.getElementById("menuLinkExtensionLast");
	
	/** Se obtienen referencias a los objetos que controlan la presentación de los
	 * detalles de los menúes
	 */
	var oDetailsMenuDefault_0=document.getElementById("detailsMenu0_0");
	var oDetailsMenuDefault_1=document.getElementById("detailsMenu0_1");
	var oDetailsMenuDefault_2=document.getElementById("detailsMenu0_2");
	var oDetailsMenuDefault_3=document.getElementById("detailsMenu0_3");
	var oDetailsMenuDefault_4=document.getElementById("detailsMenu0_4");
	var oDetailsMenu1=document.getElementById("detailsMenu1");
	var oDetailsMenu1a=document.getElementById("detailsMenu1a");
	var oDetailsMenu2=document.getElementById("detailsMenu2");
	var oDetailsMenu3=document.getElementById("detailsMenu3");
	var oDetailsMenu4=document.getElementById("detailsMenu4");
	var oDetailsMenu5=document.getElementById("detailsMenu5");
	var oDetailsMenu6=document.getElementById("detailsMenu6");
	var oDetailsMenu7=document.getElementById("detailsMenu7");
	var oDetailsMenu8=document.getElementById("detailsMenu8");
	var oDetailsMenu9=document.getElementById("detailsMenu9");
		
	/** Se pone en normalidad a todos los items
	 */
	oMenuLink1.className=oMenuLink1.className.replace(/textoLinksMenuSel/, "")
											 .replace(/\s+$/, "");
	oMenuLink1a.className=oMenuLink1a.className.replace(/textoLinksSubMenuSel/, "")
											 .replace(/\s+$/, "");
	oMenuLink2.className=oMenuLink2.className.replace(/textoLinksMenuSel/, "")
											 .replace(/\s+$/, "");
	oMenuLink3.className=oMenuLink3.className.replace(/textoLinksMenuSel/, "")
											 .replace(/\s+$/, "");
	oMenuLink4.className=oMenuLink4.className.replace(/textoLinksMenuSel/, "")
											 .replace(/\s+$/, "");
	oMenuLink5.className=oMenuLink5.className.replace(/textoLinksMenuSel/, "")
											 .replace(/\s+$/, "");
	oMenuLink6.className=oMenuLink6.className.replace(/textoLinksMenuSel/, "")
											 .replace(/\s+$/, "");
	oMenuLink7.className=oMenuLink7.className.replace(/textoLinksMenuSel/, "")
											 .replace(/\s+$/, "");
	oMenuLink8.className=oMenuLink8.className.replace(/textoLinksMenuSel/, "")
											 .replace(/\s+$/, "");
	oMenuLink9.className=oMenuLink9.className.replace(/textoLinksMenuSel/, "")
											 .replace(/\s+$/, "");
						
	/** Se oculta a los items de extension de los items de menú 
	 */
	oMenuExtension.className="menuExtensionOculta";
	oMenuExtensionLast.className="menuExtensionOculta";
	
	/** Se ocultan todos los detalles de los menúes
	 */
	oDetailsMenuDefault_0.style.display="none";
	oDetailsMenuDefault_1.style.display="none";
	oDetailsMenuDefault_2.style.display="none";
	oDetailsMenuDefault_3.style.display="none";
	oDetailsMenuDefault_4.style.display="none";
	oDetailsMenu1.style.display="none";
	oDetailsMenu1a.style.display="none";
	oDetailsMenu2.style.display="none";
	oDetailsMenu3.style.display="none";
	oDetailsMenu4.style.display="none";
	oDetailsMenu5.style.display="none";
	oDetailsMenu6.style.display="none";
	oDetailsMenu7.style.display="none";
	oDetailsMenu8.style.display="none";
	oDetailsMenu9.style.display="none";
	
	/** Oculta el submenú de Integración
	 */
	doShowHideSubMenuIntegracion(false);
	
	/** Se pone el efecto adecuado al actual item seleccionado
	 */
	if(valor=="0"){
		oDetailsMenuDefault_0.style.display=(document.addEventListener?"table-cell":"block");
		oDetailsMenuDefault_1.style.display=(document.addEventListener?"table-cell":"block");
		oDetailsMenuDefault_2.style.display=(document.addEventListener?"table-cell":"block");
		oDetailsMenuDefault_3.style.display=(document.addEventListener?"table-cell":"block");
		oDetailsMenuDefault_4.style.display=(document.addEventListener?"table-cell":"block");
	} else if(valor=="1"){
		oMenuLink1.className+=" textoLinksMenuSel";	
		oMenuExtension.className="";
		oMenuExtension.style.top="39px";
		oDetailsMenu1.style.display=(document.addEventListener?"table-cell":"block");
		
		/** Despliega el submenú de Integración
		 */
		doShowHideSubMenuIntegracion(true);
	} else if(valor=="1a"){
		oMenuLink1a.className+=" textoLinksSubMenuSel";	
		oMenuExtension.className="";
		oMenuExtension.style.top="39px";
		oDetailsMenu1a.style.display=(document.addEventListener?"table-cell":"block");
		
		/** Despliega el submenú de Integración
		 */
		doShowHideSubMenuIntegracion(true);
	} else if(valor=="2"){
		oMenuLink2.className+=" textoLinksMenuSel";	
		oMenuExtension.className="";
		oMenuExtension.style.top="74px";
		oDetailsMenu2.style.display=(document.addEventListener?"table-cell":"block");
	} else if(valor=="3"){
		oMenuLink3.className+=" textoLinksMenuSel";	
		oMenuExtension.className="";
		oMenuExtension.style.top="109px";
		oDetailsMenu3.style.display=(document.addEventListener?"table-cell":"block");
	} else if(valor=="4"){
		oMenuLink4.className+=" textoLinksMenuSel";	
		oMenuExtension.className="";
		oMenuExtension.style.top="144px";
		oDetailsMenu4.style.display=(document.addEventListener?"table-cell":"block");
	} else if(valor=="5"){
		oMenuLink5.className+=" textoLinksMenuSel";	
		oMenuExtension.className="";
		oMenuExtension.style.top="179px";
		oDetailsMenu5.style.display=(document.addEventListener?"table-cell":"block");
	} else if(valor=="6"){
		oMenuLink6.className+=" textoLinksMenuSel";	
		oMenuExtension.className="";
		oMenuExtension.style.top="214px";
		oDetailsMenu6.style.display=(document.addEventListener?"table-cell":"block");
	} else if(valor=="7"){
		oMenuLink7.className+=" textoLinksMenuSel";	
		oMenuExtension.className="";
		oMenuExtension.style.top="249px";
		oDetailsMenu7.style.display=(document.addEventListener?"table-cell":"block");
	} else if(valor=="8"){
		oMenuLink8.className+=" textoLinksMenuSel";	
		oMenuExtensionLast.className="";
		oDetailsMenu8.style.display=(document.addEventListener?"table-cell":"block");
	} else if(valor=="9"){
		oMenuLink9.className+=" textoLinksMenuSel";	
		oMenuExtension.className="";
		oMenuExtension.style.top="4px";
		oDetailsMenu9.style.display=(document.addEventListener?"table-cell":"block");
	}
}

/** Función encargada de desplegar y oculatar el submenú de Integración y Subregiones
 */
function doShowHideSubMenuIntegracion(valor){
	var oSubMenu=document.getElementById("containerMenuLink1a");
	
	if(valor){
		oSubMenu.style.display="block"
	} else {
		oSubMenu.style.display="none"
	}
}

/** Función encargada de tratar de ocultar los detalles de cualquier item de menú que
 * en ese momento se encuentre desplegado
 */
function doTryToHideMenuDetails(){
	/** Se inicia un timer que va a tratar de esconder lo desplegado por los menúes
	 */
	oTimer=setTimeout(function(){
								var oMenuLink1=document.getElementById("menuLink1");
								var oMenuLink1a=document.getElementById("menuLink1a");
								var oMenuLink2=document.getElementById("menuLink2");
								var oMenuLink3=document.getElementById("menuLink3");
								var oMenuLink4=document.getElementById("menuLink4");
								var oMenuLink5=document.getElementById("menuLink5");
								var oMenuLink6=document.getElementById("menuLink6");
								var oMenuLink7=document.getElementById("menuLink7");
								var oMenuLink8=document.getElementById("menuLink8");
								var oMenuLink9=document.getElementById("menuLink9");
								
								/** Se obtienen referencias a los objetos que permiten denotar la extensión del
								 * item de menú
								 */
								var oMenuExtension=document.getElementById("menuLinkExtension");
								var oMenuExtensionLast=document.getElementById("menuLinkExtensionLast");
								
								/** Se obtienen referenecias a los objetos que controlan la presentación de los
								 * detalles de los menúes
								 */
								var oDetailsMenuDefault_0=document.getElementById("detailsMenu0_0");
								var oDetailsMenuDefault_1=document.getElementById("detailsMenu0_1");
								var oDetailsMenuDefault_2=document.getElementById("detailsMenu0_2");
								var oDetailsMenuDefault_3=document.getElementById("detailsMenu0_3");
								var oDetailsMenuDefault_4=document.getElementById("detailsMenu0_4");
								var oDetailsMenu1=document.getElementById("detailsMenu1");
								var oDetailsMenu1a=document.getElementById("detailsMenu1a");
								var oDetailsMenu2=document.getElementById("detailsMenu2");
								var oDetailsMenu3=document.getElementById("detailsMenu3");
								var oDetailsMenu4=document.getElementById("detailsMenu4");
								var oDetailsMenu5=document.getElementById("detailsMenu5");
								var oDetailsMenu6=document.getElementById("detailsMenu6");
								var oDetailsMenu7=document.getElementById("detailsMenu7");
								var oDetailsMenu8=document.getElementById("detailsMenu8");
								var oDetailsMenu9=document.getElementById("detailsMenu9");
									
								/** Se pone en normalidad a todos los items
								 */
								oMenuLink1.className=oMenuLink1.className.replace(/textoLinksMenuSel/, "")
																		 .replace(/\s+$/, "");
								oMenuLink1a.className=oMenuLink1a.className.replace(/textoLinksSubMenuSel/, "")
																		 .replace(/\s+$/, "");
								oMenuLink2.className=oMenuLink2.className.replace(/textoLinksMenuSel/, "")
																		 .replace(/\s+$/, "");
								oMenuLink3.className=oMenuLink3.className.replace(/textoLinksMenuSel/, "")
																		 .replace(/\s+$/, "");
								oMenuLink4.className=oMenuLink4.className.replace(/textoLinksMenuSel/, "")
																		 .replace(/\s+$/, "");
								oMenuLink5.className=oMenuLink5.className.replace(/textoLinksMenuSel/, "")
																		 .replace(/\s+$/, "");
								oMenuLink6.className=oMenuLink6.className.replace(/textoLinksMenuSel/, "")
																		 .replace(/\s+$/, "");
								oMenuLink7.className=oMenuLink7.className.replace(/textoLinksMenuSel/, "")
																		 .replace(/\s+$/, "");
								oMenuLink8.className=oMenuLink8.className.replace(/textoLinksMenuSel/, "")
																		 .replace(/\s+$/, "");
								oMenuLink9.className=oMenuLink9.className.replace(/textoLinksMenuSel/, "")
																		 .replace(/\s+$/, "");
													
								/** Se oculta a los items de extension de los items de menú 
								 */
								oMenuExtension.className="menuExtensionOculta";
								oMenuExtensionLast.className="menuExtensionOculta";
								
								/** Se ocultan todos los detalles de los menúes, excepto el del de default
								 */
								oDetailsMenuDefault_0.style.display=(document.addEventListener?"table-cell":"block");;
								oDetailsMenuDefault_1.style.display=(document.addEventListener?"table-cell":"block");;
								oDetailsMenuDefault_2.style.display=(document.addEventListener?"table-cell":"block");;
								oDetailsMenuDefault_3.style.display=(document.addEventListener?"table-cell":"block");;
								oDetailsMenuDefault_4.style.display=(document.addEventListener?"table-cell":"block");;
								oDetailsMenu1.style.display="none";
								oDetailsMenu1a.style.display="none";
								oDetailsMenu2.style.display="none";
								oDetailsMenu3.style.display="none";
								oDetailsMenu4.style.display="none";
								oDetailsMenu5.style.display="none";
								oDetailsMenu6.style.display="none";
								oDetailsMenu7.style.display="none";
								oDetailsMenu8.style.display="none";								
								oDetailsMenu9.style.display="none";								
						  }, 500);	
}

/** Función encargada de detenet el intento de ocultar los detalles de cualquier item de menú que
 * en ese momento se encuentre desplegado
 */
function doStopTryToHideMenuDetails(){
	clearTimeout(oTimer);
}