// UNIR

// Kike Valdenebro - 25.02.2008

// Redbility

//

// Libreria de funciones para version dinamica





// Constantes

var g_secciones = ["presentacion", "reconocimiento", "vision", "innovacion", "maestros", "investigacion", "larioja"];

// Pagina actual

var g_paginaActual = 1;

// Hilos de ejecucion

var g_movingContenido = 0;

// Objetivos de los hilos de ejecucion

var g_targetX = 0;

// Temporizadores

var g_temp01 = 0;





window.onload = init;



function unirCenterPopUp(objDiv)

{

  var screenWidth = screen.width;

  var screenHeight = screen.height;

  

  var divWidth = objDiv.getStyle('width');

  var divHeight = objDiv.getStyle('height');

  

  var intLeft = (parseFloat(screenWidth) - parseFloat(divWidth))/2;

  var intTop = (parseFloat(screenHeight) - parseFloat(divHeight))/2;

  

  strLeft = (intLeft-25) + "px";

  strTop = (intTop-125) + "px";

  

  

  objDiv.setStyle({left: strLeft});

  objDiv.setStyle({top: strTop});    

  

  unirDisableScroll("off");



}



function unirDisableScroll(strStatus)

{



  if(strStatus == "off")

  {

    document.getElementsByTagName("html")[0].style.overflow = "hidden";   

  }

  else

  {   

    document.getElementsByTagName("html")[0].style.overflow = "auto";    

  }  

 

    

  // Fija el tamaño de la cortinilla

  var objDiv = document.getElementById("velo");

  var screenHeight = screen.height;  

  var intHeight = (parseFloat(screenHeight)); 

  

  strHeight = (intHeight) + "px";  

  

  if(objDiv)

    objDiv.setStyle({height: strHeight});      



}



function unirCheckForm(objCheck, strButton)

{



  if(objCheck.checked == false) 

  {

    document.getElementById(strButton).disabled = true; 

    alert("Su solicitud no podrá ser enviada hasta que haya leído y aceptado la política de privacidad");

  }

  else 

    document.getElementById(strButton).disabled = false;



}



function unirCheckMail(str) {



		var at="@"

		var dot="."

		var lat=str.indexOf(at)

		var lstr=str.length

		var ldot=str.indexOf(dot)

		

		if (str.indexOf(at)==-1){

		   alert("Dirección de correo inválida")

		   return false

		}



		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){

		   alert("Dirección de correo inválida")

		   return false

		}



		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){

		    alert("Dirección de correo inválida")

		    return false

		}



		 if (str.indexOf(at,(lat+1))!=-1){

		    alert("Dirección de correo inválida")

		    return false

		 }



		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){

		    alert("Dirección de correo inválida")

		    return false

		 }



		 if (str.indexOf(dot,(lat+2))==-1){

		    alert("Dirección de correo inválida")

		    return false

		 }

		

		 if (str.indexOf(" ")!=-1){

		    alert("Dirección de correo inválida")

		    return false

		 }



 		 return true					

	}



function unirCheckComent(str) {



	var comentID = document.getElementById(str);

	

	if ((comentID.value==null)||(comentID.value=="")){

		alert("Por favor introduzca su comentario para poder continuar")

		comentID.focus()

		return false

	    }

 		 return true					

	}

	

function unirValidateForm(strMailField)

{



	var emailID = document.getElementById(strMailField);

	

	if ((emailID.value==null)||(emailID.value=="")){

		alert("Por favor introduzca su e-mail para poder continuar")

		emailID.focus()

		return false

	}

	if (unirCheckMail(emailID.value)==false){

		emailID.value=""

		emailID.focus()

		return false

	}

	if (strMailField == 'tuemail2'){

	    if (unirCheckComent('tucomentarios2')==false){

		    return false

	    }

	}

	return true

 }



function unirGotoLang(strLang)

{

	// Genera URL con la página actual y hace una redirección a ella (se activa con el selector de idioma)

	var strLocation = "../" + strLang + "/index.php?page=" + g_paginaActual;

	location.href = strLocation;

} 

 

function unirGotoLandingPage()

{

	// Chequea si el usuario viene de una página en otro idioma (se activa con body.onload)

	var strURL = location.href;

	var intIndexOf = strURL.indexOf("?page=");

	

	// Si viene de otro idioma, extrae de la URL el número de página y la carga

	if(intIndexOf != -1)

	{

		arTemp = strURL.split("?page=");

		var intPage = arTemp[1];

		verPagina(intPage);

	}



}



function init() {

	// Funcion de inicializacion de la pagina version dinamica

	$('a-anterior').setStyle({display: 'block'});

	$('a-siguiente').setStyle({display: 'block'});

	cargaSeccion(1);

	

	return;

}



function init2() {

	// Funcion de inicializacion: funciones a ejecutar despues de cargar

	capturaEnlaces();

	iraSearch();

	// Montar los videos

	

	

	// JND 27.04.09 chequea si hay un cambio de idioma

	unirGotoLandingPage();	

	

	return;

}



function cargaSeccion(i) {

	// Anade mediante Ajax la pagina i a la capa contenido, y  luego recursivamente el resto

	if(i<g_secciones.length) {

		new Ajax.Updater('contenido', 'sp_'+g_secciones[i]+'.php', {

			evalScripts: true,

			method: 'get',

			insertion: Insertion.Bottom,

			onComplete: function() {

				cargaSeccion(i+1);

			}

		});

	}

	else {

		init2();  // Termina de inicializar la pagina

	}

	return;

}



function capturaEnlaces() {

	// Reasigna la accion a realizar al pulsar un enlace de navegacion

	var boton = $('logo');

	boton.href = '#';

	Event.observe(boton, 'click', function(event) {

		verPagina(1);

	});

	

	var links = $$('a.nav');

	for (var i=0; i<links.length; i++) {

		links[i].href = '#';

		Event.observe(links[i], 'click', function(event) {

			var element = Event.element(event);

			var pagina = eval(element.readAttribute('id').substr(8,2));

			if(!element.hasClassName('activo')) {

				verPagina(pagina);

			}

		});

	}

	

	boton = $('a-anterior');

	boton.href = '#';

	Event.observe(boton, 'click', function(event) {

		paginaAnterior();

	});

	

	boton = $('a-siguiente');

	boton.href = '#';

	Event.observe(boton, 'click', function(event) {

		paginaSiguiente();

	});

	

	var linksInvitacion = $$('a.pop-invitacion');

	for (var i=0; i<linksInvitacion.length; i++) {

		linksInvitacion[i].href = '#';

		Event.observe(linksInvitacion[i], 'click', function(event) {

			var element = Event.element(event);

			$('velo').setStyle({display: 'block'});

			$('invitacion').setStyle({display: 'block'});

			unirCenterPopUp($('invitacion'));

		});

	}



	var linksInformacion = $$('a.pop-informacion');

	for (var i=0; i<linksInformacion.length; i++) {

		linksInformacion[i].href = '#';

		Event.observe(linksInformacion[i], 'click', function(event) {

			var element = Event.element(event);

			$('velo').setStyle({display: 'block'});

			$('informacion').setStyle({display: 'block'});

			unirCenterPopUp($('informacion'));

		});

	}

	var linkspolitica = $$('a.pop-politica');

	for (var i=0; i<linkspolitica.length; i++) {

		linkspolitica[i].href = '#';

		Event.observe(linkspolitica[i], 'click', function(event) {

			var element = Event.element(event);

			$('velo').setStyle({display: 'block'});

			$('politica').setStyle({display: 'block'});

			unirCenterPopUp($('politica'));

		});

	}    

    var links9grados = $$('a.pop-9grados');

	for (var i=0; i<links9grados.length; i++) {

		links9grados[i].href = '#';

		Event.observe(links9grados[i], 'click', function(event) {

			var element = Event.element(event);

			$('velo').setStyle({display: 'block'});

			$('9grados').setStyle({display: 'block'});

			unirCenterPopUp($('9grados'));

		});

	}

    var links6grados = $$('a.pop-6grados');

	for (var i=0; i<links6grados.length; i++) {

		links6grados[i].href = '#';

		Event.observe(links6grados[i], 'click', function(event) {

			var element = Event.element(event);

			$('velo').setStyle({display: 'block'});

			$('6grados').setStyle({display: 'block'});

			unirCenterPopUp($('6grados'));

		});

	}

    var linkscontacta = $$('a.pop-contacta');

	for (var i=0; i<linkscontacta.length; i++) {

		linkscontacta[i].href = '#';

		Event.observe(linkscontacta[i], 'click', function(event) {

			var element = Event.element(event);

			$('velo').setStyle({display: 'block'});

			$('contacta').setStyle({display: 'block'});

			unirCenterPopUp($('contacta'));

		});

	}	

	boton = $('close-invitacion');

	boton.href = '#';

	Event.observe(boton, 'click', function(event) {

		$('velo').setStyle({display: 'none'});

		$('invitacion').setStyle({display: 'none'});

		unirDisableScroll("on");

	});

	

	boton = $('close-informacion');

	boton.href = '#';

	Event.observe(boton, 'click', function(event) {

		$('velo').setStyle({display: 'none'});

		$('informacion').setStyle({display: 'none'});

		unirDisableScroll("on");

	});

	

	boton = $('close-politica');

	boton.href = '#';

	Event.observe(boton, 'click', function(event) {

		$('velo').setStyle({display: 'none'});

		$('politica').setStyle({display: 'none'});

		unirDisableScroll("on");

	});

	

    boton = $('close-9grados');

	boton.href = '#';

	Event.observe(boton, 'click', function(event) {

		$('velo').setStyle({display: 'none'});

		$('9grados').setStyle({display: 'none'});

		unirDisableScroll("on");

	});

    boton = $('close-6grados');

	boton.href = '#';

	Event.observe(boton, 'click', function(event) {

		$('velo').setStyle({display: 'none'});

		$('6grados').setStyle({display: 'none'});

		unirDisableScroll("on");

	});

    boton = $('close-contacta');

	boton.href = '#';

	Event.observe(boton, 'click', function(event) {

		$('velo').setStyle({display: 'none'});

		$('contacta').setStyle({display: 'none'});

		unirDisableScroll("on");

	});

}



function iraSearch() {

	// Si en la URL se ha intruducido un parametro "search", va a la seccion dada

	seccion = location.search;

	if(!seccion) {

		seccion ='?seccion=presentacion';

	}

	seccion = seccion.split("=")[1];

	for (var i=0; i<g_secciones.length; i++) {

		if(seccion==g_secciones[i]) {

			break;

		}

	}

	if(i>=g_secciones.length) {

			i = 0;

	}

	verPagina(i+1);

	$('general').removeClassName(seccion);

	$('a-pagina'+Math.floor((i+1)/10)+((i+1)-10*Math.floor((i+1)/10))).addClassName('activo');

	return;

}



function movingContenido() {

	// Funcion periodica utilizada por moveContenido()

	var xActual = parseInt($('contenido').getStyle('left'));

	if ( Math.abs(xActual - g_targetX) > 8 ) {

		xActual = xActual + Math.floor((g_targetX - xActual)/8);

		$('contenido').setStyle({left: xActual+'px'});

	}

	else if ( Math.abs(xActual - g_targetX) > 2 ) {

		xActual = xActual + Math.floor((g_targetX - xActual)/2);

		$('contenido').setStyle({left: xActual+'px'});

	}

	else {

		xActual = g_targetX;

		$('contenido').setStyle({left: xActual+'px'});

		clearInterval(g_movingContenido);

	}

	return;

}



function moveContenido() {

	// Mueve la capa contenido a la posicion almacenada en g_targetX (left)

	clearInterval(g_movingContenido);

	g_movingContenido = setInterval('movingContenido()', 25);

	cambiarSeccionActiva();

	return;

}



function cambiarSeccionActiva() {

	// Cambia la seccion activa mostrada en la navegacion segun la pagina actual

	var links = $$('a.nav');

	for (var i=0; i<links.length; i++) {

		links[i].removeClassName('activo');

	}

	$('a-pagina'+Math.floor(g_paginaActual/10)+(g_paginaActual-10*Math.floor(g_paginaActual/10))).addClassName('activo');

	if (g_paginaActual==1) {

		$('a-anterior').addClassName('off');

	}

	else {

		$('a-anterior').removeClassName('off');

	}

	if (g_paginaActual==g_secciones.length) {

		$('a-siguiente').addClassName('off');

	}

	else {

		$('a-siguiente').removeClassName('off');

	}

	return;

}



function verPagina(pagina) {

	// Mueve la capa contenido para visualizar la seccion elegida

	g_targetX = -916*(pagina-1);

	g_paginaActual = pagina;

	moveContenido();

	muestraVideo(pagina);

	return;

}



function paginaAnterior() {

	// Retrocede hasta la pagina anterior

	if(g_paginaActual>1) {

		verPagina(g_paginaActual-1);

	}

	return;

}



function paginaSiguiente() {

	// Avanza hasta la pagina siguiente

	if(g_paginaActual<g_secciones.length) {

		verPagina(g_paginaActual+1);

	}

	return;

}



function muestraVideo(pagina) {

	// Elimina todos los videos y muestra solo el de la pagina activa



	var videoframes = $$('.video-frame');

	for (var i=0; i<videoframes.length; i++) {

		videoframes[i].setStyle({display: 'none'});

		/* var j=i+1; */

		/* $('video-frame'+j).setStyle({display: 'none'}) */

	}

	var videos = $$('.video');

	for (var i=0; i<videos.length; i++) {

		var j=i+1;

		videos[i].remove();

	}

	

	if($('video-frame'+pagina)) {

		$('video-frame'+pagina).setStyle({display: 'block'})

		g_videoUpdating = true;

		new Ajax.Updater('video-frame'+pagina, 'sp_video'+pagina+'.php', {

			evalScripts: true,

			method: 'get',

			insertion: Insertion.Top

		});

	}



}

function unirSubMenus(strMenu)

{



  var objShow;

  var strItem;



  for(i=1; i<=4; i++)

  {

	  

	if(i == 1)

      strItem = "divGrados"; 

	 

    if(i == 2)

      strItem = "divAvanzados";

      

    if(i == 3)

      strItem = "divContinua";

      

    if(i == 4)

      strItem = "divMaster";

	 



    

    objShow = document.getElementById(strItem);  

    

    if(objShow)

    {

      if(strItem == strMenu)

      {

        if(objShow.style.display == "none")

          objShow.style.display = "block";

        else

          objShow.style.display = "none";        

      }

      else

      {

        objShow.style.display = "none";  

      }

    }   

  }

}