var Effect=Effect
var ocultandoMenu=[];


var posicionSuperioMenu=155

function ocultaMenu(menuNum) {
	var loMenu=document.getElementById("menu"+menuNum)
	if (loMenu.ocultando) return;
	loMenu.ocultando=true;
	var loApa=document.getElementById("apa"+menuNum)
	if (!desplegado) {
		Effect.playEffect({target:loMenu,height:1,top:loApa.offsetTop,left:loApa.offsetLeft,duration:300})
	} else {
		Effect.playEffect({target:loMenu,height:1,top:loApa.offsetTop,scrollTop:loMenu.offsetHeight*100,duration:300})
	}
	visibleMenus[menuNum]=false
}

function muestraMenu(menuNum) {
	var loMenu=document.getElementById("menu"+menuNum)
	loMenu.style.display="block";
	var loApa=document.getElementById("apa"+menuNum)
	loMenu.style.left=loApa.offsetLeft+"px";
	loMenu.ocultando=false;
	if (!desplegado) {
		var loTop=loApa.offsetTop-heights["menu"+menuNum];
		if (!loMenu.ocultando) loMenu.style.top=loApa.offsetTop+"px"
		loMenu.scrollTop=0;
		loMenu.style.height="0px";
		Effect.playEffect({
			target:loMenu,
			height:heights["menu"+menuNum],
			top:loTop+3,
			duration:300
		})
	} else {
		var loTop=loApa.offsetTop+loApa.offsetHeight-3;
		loMenu.scrollTop=heights["menu"+menuNum];
		loMenu.style.top=loTop+"px"
		Effect.playEffect({
			target:loMenu,
			height:heights["menu"+menuNum]-3,
			scrollTop:0,
			duration:300
		})
	}
	visibleMenus[menuNum]=true
}

var intervalMenu=[];
var visibleMenus=[];
var activateMenu=function (where,show) {
	if (typeof(where)=="string") where=document.getElementById(where)
	var menuNum=where.id.substr(3,1)
	clearTimeout(intervalMenu[where.id])
	if (!show) {
		intervalMenu[where.id]=setTimeout("ocultaMenu("+menuNum+")",300)
		return;
	}
	if ( (arguments.length==2) && (!has(true,visibleMenus)) ){
		if (!visibleMenus[menuNum]) intervalMenu[where.id]=setTimeout("activateMenu('"+where.id+"',"+show+","+true+")",300)
		return
	}
	if (visibleMenus[menuNum]) return;
	for (var i=0; i<4; i++) {
		if ( (i!=menuNum) && (visibleMenus[i]) ) ocultaMenu(i)
	}
	muestraMenu(menuNum)
}

var workingOnAJAX=new Array();

function changeLang_(obj) {
	workingOnAJAX["changeLang"]=false;
	if (obj.responseText=="OK") {
		if (window.location.href.indexOf("?")>=0) {
			window.location.href=window.location.href.substr(0,window.location.href.indexOf("?"))
		} else {
			//this.location.hash=""
			if ( (bSaf) || (bKonq) ) window.location.reload(true)
			else window.location.reload()
		}
	} else {
		alert("Ha acurrido un error al cambiar el idioma:\n"+obj.status)
	}
}

function changeLang(lang) {
	if (currLang==lang) return
	if (workingOnAJAX["changeLang"]) return
	if ( (bSaf) || (bKonq) ) {
		if (window.location.href.indexOf("?")>=0) {
			window.location.href=window.location.href.substr(0,window.location.href.indexOf("?"))+"?lang="+lang+window.location.hash;
		} else {
			window.location.href+="?lang="+lang+window.location.hash;
		}
		return
	}
	workingOnAJAX["changeLang"]=true;
	advAJAX.post({
		url:"serverFuncs/changeLang.php",
		lang:lang,
		onSuccess:changeLang_,
		onError:function(obj){alert("Error de conexion con el servidor\nHTTP ERROR: "+obj.status)}
		})
}

var desplegado=false;

var activateMenuBackup;

function repliega(parm) {
	var repliegueSpeed=500;
	if (!parm) {
		activateMenuBackup=activateMenu;
		activateMenu=function(){}
		for (var i=0;i<4;i++) {
			var elm=document.getElementById("menu"+i)
			if (elm.offsetLeft>0) {
				ocultaMenu(i)
			}
			var elm=document.getElementById("foto"+i)
			Effect.playEffect({target:elm,opacity:0,duration:repliegueSpeed})
		}
		var elm=document.getElementById("fotos")
		if (!bIE) Effect.playEffect({target:elm,opacity:0,duration:repliegueSpeed})
		setTimeout("repliega("+1+")",repliegueSpeed)
	} else if (parm==1) {
		var elm=document.getElementById("menu")
		Effect.playEffect({target:elm,top:posicionSuperioMenu,duration:repliegueSpeed})

		var elm=document.getElementById("fotos")
		elm.style.display="none"

		Effect.playEffect({target:document.getElementById("popup"),opacity:0,duration:repliegueSpeed})
		setTimeout("repliega("+2+")",repliegueSpeed)
	} else if (parm==2) {
		document.getElementById("popup").style.display="none"
		elms["content"].style.display="block"
		var loEff=new Effect.effect({target:elms.content,opacity:1})
		loEff.target.setopacity(0);
		Effect.playEffect({target:elms.content,opacity:1,duration:repliegueSpeed})

		var elm=document.getElementById("imgFondo").parentNode;
		var loEff=new Effect.effect({target:elm,opacity:1})
		loEff.target.setopacity(0);
		elm.style.display="block";
		Effect.playEffect({target:elm,opacity:1,duration:repliegueSpeed})

		activateMenu=activateMenuBackup
	}
}
var encongiendo=false;
function vuelveAHome(parm) {
	if (!desplegado) return;
	var repliegueSpeed=500;
	if (!parm) {
		if(encongiendo) return;
		encongiendo=true;
		var elm=document.getElementById("imgFondo").parentNode;
		Effect.playEffect({target:elm,opacity:0,duration:repliegueSpeed})
		Effect.playEffect({target:elms.content,opacity:0,duration:repliegueSpeed})
		activateMenuBackup=activateMenu;
		activateMenu=function(){}
		for (var i=0;i<4;i++) {
			var elm=document.getElementById("menu"+i)
			if (elm.offsetLeft>0) {
				ocultaMenu(i)
			}
			var elm=document.getElementById("foto"+i)
			Effect.playEffect({target:elm,opacity:1,duration:repliegueSpeed})
		}
		document.location.hash='home';
		setTimeout("vuelveAHome("+1+")",repliegueSpeed)
	} else if (parm==1) {
		document.getElementById("imgFondo").parentNode.style.display="none"
		elms["content"].style.display="none"
		var elm=document.getElementById("menu")
		Effect.playEffect({target:elm,top:350,duration:repliegueSpeed})
		var elm=document.getElementById("popup")
		var loEff=new Effect.effect({target:elm,opacity:1})
		loEff.target.setopacity(0);
		elm.style.display="block";
		Effect.playEffect({target:elm,opacity:1,duration:repliegueSpeed})
		setTimeout("vuelveAHome("+2+")",repliegueSpeed)
	} else if (parm==2) {
		var elm=document.getElementById("fotos")
		elm.style.display="block";
		if (!bIE) var loEff=new Effect.effect({target:elm,opacity:1})
		if (!bIE) loEff.target.setopacity(0);
		if (!bIE) Effect.playEffect({target:elm,opacity:1,duration:repliegueSpeed})
		activateMenu=activateMenuBackup
		desplegado=false;
		encongiendo=false;
	}
}

function repliegaYa(parm) {
	var elm=document.getElementById("fotos")
	elm.style.display="none";
	var elm=document.getElementById("menu")
	elm.style.top=posicionSuperioMenu+"px";
	document.getElementById("popup").style.display="none"
	document.getElementById("imgFondo").parentNode.style.display="block"
	elms["content"].style.display="block"
}

function processLink(whatURL,instantly) {
	var url2img=[
		[
			[
			"filosofia",
			"quienes_somos"
			], "img/fondos/presentacion.jpg"
		],
		[
			[
			"areas",
			"honorarios"
			], "img/fondos/servicios.jpg"
		],
		[
			[
			"contenidos_intro",
			"registro",
			"legislacion",
			"resoluciones",
			"doctrina"
			], "img/fondos/publicacion2.jpg"
		],
		[
			[
			"gestion",
			"ofertas"
			], "img/fondos/equipo.jpg"
		]
	]
	var laImg;
	var done=false;
	for (var i=0;i<url2img.length;i++) {
		var cur=url2img[i]
		for (var j=0;j<cur[0].length;j++) {
			if (whatURL.indexOf(cur[0][j])!=-1) {
				done=true;
				laImg=cur[1];
				break;
			}
		}
		if (done) break;
	}
	if (laImg) document.getElementById("imgFondo").src=laImg;
	if (!desplegado) {
		if (!instantly) {
			repliega()
			setTimeout(function(){desplegado=true},200)
		} else {
			repliegaYa()
			desplegado=true
		}
	}

	for (var i=0; i<4; i++) {
		if (visibleMenus[i]) ocultaMenu(i)
	}

	elms.content.innerHTML="";

	loadPage({target:elms["content"],url:whatURL})

}

linkParser="processLink"

var heights = [];
var inicios=[];
function inicio() {
	parseLinks(document.body,"processLink")

	enableHistory()

	elms["loading"]=document.getElementById("loading")

	elms["content"]=document.getElementById("content")

	if (window.location.hash.substring(1)) {
		if (window.location.hash.substring(1)!="home") {
			processLink(window.location.hash.substring(1),true)
		}
	}

	for (var i=0;i<inicios.length;i++) {
		inicios[i]();
	}
}

function resize() {
	var loContent=document.getElementById("mainPage");
	loWidth=window.innerWidth!=undefined?window.innerWidth:document.body.clientWidth;
	loHeight=window.innerHeight!=undefined?window.innerHeight:document.body.clientHeight;
	var winLeft=Math.ceil((loWidth-960)/2);
	var winTop=Math.ceil((loHeight-576)/2);
	if (winLeft<0) winLeft=0;
	if (winTop<0) winTop=0;
	loContent.style.left=winLeft+"px"
	loContent.style.top=winTop+"px";
}