// JavaScript Document

var nTotalWidth = 0;
var oFrameHorizontal;
var aSecciones = new Array();

var nSeccionActual = 0;
var sSeccionActual = "inicio";

var sRutaImagenes = "./images/";

var x_left;
var x_top;

var x_duration = 2;
var x_easingFunc = "Tween.strongEaseOut";

function inicio()
{
	document.getElementById("imagen_loading").style.display = "none";
	document.getElementById("menu").style.visibility = "visible";
	document.getElementById("frame_horizontal").style.visibility = "visible";
	document.getElementById("frame_horizontal").style.display = "block";
	nTotalWidth = CargaSecciones();
	
	oFrameHorizontal = document.getElementById("frame_horizontal");
	
	oFrameHorizontal.style.width = nTotalWidth + "px";

	x_left = new Tween(oFrameHorizontal.style,'left','',parseInt(oFrameHorizontal.style.left),10,1,'px');
	
	
	//iniciamos las galerias de fotos
	so_init();
	
	if (getURLParam('section') != "")
	{
		sSeccion = getURLParam('section');
		
		//si hay subsección... la capturamos
		if (getURLParam('subsection') != "")
			sSubseccion = getURLParam('subsection');
		else
			sSubseccion = "";
		
		//construimos el nombre del div
		if (sSubseccion != "")
			var sId = sSeccion + "_" + sSubseccion;
		else
			var sId = sSeccion;
		
		//comprobamos si el div existe para buscar galerias de imagenes
		//y para mostrar la sección
		if (document.getElementById(sId) != null)
		{
			nGaleriaImagen = HayGaleria(sId);
			
			VesA(sSeccion,sSubseccion,nGaleriaImagen);
		} else {
			//alert("sección no encontrada");
		}
	}
}

function getURLParam(strParamName){
	var strReturn = "";
	var strHref = window.location.href;
	if ( strHref.indexOf("#") > -1 )
	{
		var strQueryString = strHref.substr(strHref.indexOf("#") + 1).toLowerCase();
		var aQueryString = strQueryString.split("&");
		
		for ( var iParam = 0; iParam < aQueryString.length; iParam++ )
		{
			if (aQueryString[iParam].indexOf("=") > -1 )
			{
				var aParam = aQueryString[iParam].split("=");
				
				if (aParam[0] == strParamName)
				{
					//alert("son iguales strParamName= " + strParamName + " y aParam[0]= " + aParam[0]);
					strReturn = aParam[1];
					break;
				}
			}
		}
	}
	return strReturn;
}

function HayGaleria(sId)
{

	var sResult = "";
	var sTextoContenedor = "imageContainer";

	//capturamos el div
	var elem = document.getElementById(sId).getElementsByTagName('div');
	
	//var elem = document.getElementById('frmMain').elements;
	for(var i = 0; i < elem.length; i++)
	{
		var sTempId = elem[i].id;
		if (sTempId.indexOf(sTextoContenedor) >= 0)
		{
			sResult = sTempId.substr(sTextoContenedor.length,sTempId.length - sTextoContenedor.length);
			break;
		}
	} 
	
	return sResult;
}

function DebugPrint(sTexto) {
	document.getElementById("debug").innerHTML += sTexto;
}

function VesA(sSeccion, sSubseccion, nSlide){
	
	//inicializamos la variable que va a guardar los pixels que tiene que avanzar
	//o retroceder para hacer el efecto
	var nPosicionSeccion = 0;
	
	//Paramos el slide actual
	ParaSlide();
	
	//si tiene una subseccion
	if (sSubseccion != "")
	{
		//recorremos el array de las secciones para saber los pixels que tiene que moverse
		//y para cambiar el estado de la sección activa
		for (i = 0; i <= aSecciones.length; i++)
		{
			//si la sección actual es la sección que queremos mostrar
			if (aSecciones[i][0] == (sSeccion + "_" + sSubseccion))
			{
				//cambiamos el className de la anterior sección actual a inactiva
				document.getElementById(sSeccionActual).className = "seccion_inactiva";
				
				//cambiamos el className de la sección nueva a activa
				document.getElementById(sSeccion + "_" + sSubseccion).className = "seccion_activa";
				
				//capturamos el nombre de la sección
				
				//cambiamos la imagen del menu anterior a su estado normal
				if (sSeccionActual.indexOf("_") >= 0)
					document.getElementById("bt_" + sSeccionActual.substr(0,sSeccionActual.indexOf("_"))).src = sRutaImagenes + "bt_" + sSeccionActual.substr(0,sSeccionActual.indexOf("_")) + ".jpg";
				else
					document.getElementById("bt_" + sSeccionActual).src = sRutaImagenes + "bt_" + sSeccionActual + ".jpg";
				
				//cambiamos la imagen del menu y ponemos la imagen con rollover
				document.getElementById("bt_" + sSeccion).src = sRutaImagenes + "bt_" + sSeccion + "_over.jpg";
				
				//cambiamos el valor de sSeccionActual y nSeccionActual
				sSeccionActual = sSeccion + "_" + sSubseccion;
				nSeccionActual = i;
				
				//salimos del bucle
				break;
			}
	
			nPosicionSeccion = nPosicionSeccion + aSecciones[i][1];
		}
		
	} else {
		//recorremos el array de las secciones para saber los pixels que tiene que moverse
		//y para cambiar el estado de la sección activa
		for (i = 0; i <= aSecciones.length; i++)
		{
			//si la sección actual es la sección que queremos mostrar
			if (aSecciones[i][0] == sSeccion)
			{
				//cambiamos el className de la anterior sección actual a inactiva
				document.getElementById(sSeccionActual).className = "seccion_inactiva";
				
				//cambiamos el className de la sección nueva a activa
				document.getElementById(sSeccion).className = "seccion_activa";
				
				
				//cambiamos la imagen del menu anterior a su estado normal
				if (sSeccionActual.indexOf("_") >= 0)
					document.getElementById("bt_" + sSeccionActual.substr(0,sSeccionActual.indexOf("_"))).src = sRutaImagenes + "bt_" + sSeccionActual.substr(0,sSeccionActual.indexOf("_")) + ".jpg";
				else
					document.getElementById("bt_" + sSeccionActual).src = sRutaImagenes + "bt_" + sSeccionActual + ".jpg";
				
				//cambiamos la imagen del menu y ponemos la imagen con rollover
				document.getElementById("bt_" + sSeccion).src = sRutaImagenes + "bt_" + sSeccion + "_over.jpg";
				
				//cambiamos el valor de sSeccionActual y nSeccionActual
				sSeccionActual = sSeccion;
				nSeccionActual = i;
				
				//salimos del bucle
				break;
			}
	
			nPosicionSeccion = nPosicionSeccion + aSecciones[i][1];
		}
	}
	
	x_left.func = eval(x_easingFunc);
	x_left.continueTo(0 - nPosicionSeccion,x_duration);

	x_left.onMotionFinished = function(){
		if (nSlide != "")
			IniciaSlide(nSlide);
	};	


}


function CargaSecciones()
{
	//si no hay objetos, salimos de la funcion
	if (!document.getElementsByTagName) {
	return;
	}
	
	//cargamos todos los objetos div en la variable
	var objetos = document.getElementsByTagName('div');
	var nWidth = 0;
	var iCont = -1;
	
	//recorremos la variable para ver uno a uno los objetos div
	for (i = 0; i < objetos.length; i++)
	{
		//si el objeto div tiene como className seccion_activa o seccion_inactiva
		//quiere decir que es una seccion
		if (objetos[i].className == "seccion_activa" || objetos[i].className == "seccion_inactiva")
		{
			//actualizamos el contadore
			iCont = iCont + 1;
			
			//creamos un nuevo array dentro de la posicion actual
			//porque necesitamos guardar dos datos: nombre de la sección y el width
			aSecciones[iCont] = new Array();
			
			aSecciones[iCont][0] = objetos[i].id;
			aSecciones[iCont][1] = objetos[i].offsetWidth;
			
			//añadimos el width al total
			nWidth = nWidth + objetos[i].offsetWidth;
			
			
			//introducimos el nombre del div dentro del contenido
			//objetos[i].innerHTML = objetos[i].id;
		}
	}
	
	/*
	for (i = 0; i <= iCont; i++)
	{
		DebugPrint("secci&oacute;n: " + aSecciones[i][0]);
		DebugPrint("width: " + aSecciones[i][1]);
		DebugPrint("****************************");
		
	}
	*/
	return nWidth;

}

function CambiaImagenMenu(sObj, sImagen)
{
	if (sSeccionActual.indexOf("#") >= 0)
	{
		if (sObj.id != "bt_" + sSeccionActual.substr(0,sSeccionActual.indexOf("#")))
			sObj.src = sImagen;
	} else {
		//si estamos sobre otro menu que no sea el actual
		if (sObj.id != "bt_" + sSeccionActual)
			sObj.src = sImagen;
	}
}