/********************************************************************************
					JAVASCRIPT PARA LAS GALERIAS
********************************************************************************/

var elementoActual = 0; 
var estoyHaciendoFadeIn = false;
var elementoSiguiente = 1;
var tiempo; //para el timeout
var tipoGaleria = 1; //1-secuencial, 2-aleatoria
var ultimoAleatorioGenerado = -1;



/******* GALERIA CON IMAGENES PRECARGADAS - FADEIN, FADEAOUT *******/


/* 
Pinta un objeto o foto de la galeria haciendo fadeOut-->fadeIn
Parametros:
	elementoNuevo: nueva imagen a mostrar
*/
function muestraElementoPrecarga(elementoNuevo){
	var i;
	//borramos el timeout por si hemos hecho click
	if(estoyHaciendoFadeIn == false){
		clearTimeout(tiempo);
		elementoSiguiente = elementoNuevo;
		//alert(elementoActual + " " + elementoSiguiente);
		document.getElementById('imagenGaleriaCab' + elementoActual).style.zIndex=1;
		$('#imagenGaleriaCab' + elementoActual).fadeOut(1000,function(){
			//elementoActual = elementoSiguiente;
			//mostrarImagenPrecarga();
	    });
		elementoActual = elementoSiguiente;
		mostrarImagenPrecarga();
	}
	
}

//------------------------------------------------------------------------

/*
	Muestra una imagen haciendo fadeIn
*/
function mostrarImagenPrecarga(){
	//document.getElementById("ajaxload").style.display = 'none';
	estoyHaciendoFadeIn = true;
	/*$('#imagenGaleriaCab' + elementoSiguiente).fadeIn(2000,function(){
		estoyHaciendoFadeIn = false;
		elementoSiguiente = elementoSiguiente+1;
		transicionAutomaticaPrecarga();
    });*/
	document.getElementById('imagenGaleriaCab' + elementoSiguiente).style.zIndex=0;
	$('#imagenGaleriaCab' + elementoSiguiente).fadeIn(1,function(){
		estoyHaciendoFadeIn = false;
		if(tipoGaleria == 1){//secuencial
			elementoSiguiente = elementoSiguiente+1;
		}else{//aleatoria
			elementoSiguiente = aleatorio(0,numElementos);
		}
		ultimoAleatorioGenerado = elementoSiguiente;
		transicionAutomaticaPrecarga();
    });
}

//------------------------------------------------------------------------

/*
	Muestra la imagen de inicio haciendo fadeIn
	Parametros:
		tipoDeGaleria: 1-secuencial
					   2-aleatoria
		primeraFija: true  - la primera foto es la que tiene el id imagenGaleriaCab0
					 false - la primera foto se selecciona aleatoriamente
*/
function mostrarImagenInicioPrecarga(tipoDeGaleria,primeraFija){
	//document.getElementById("ajaxload").style.display = 'none';
	/*
	$('#imagenGaleriaCab0').fadeIn(2000,function(){
		transicionAutomaticaPrecarga();
    });
	*/
	
	//Configuramos la galeria
	if(primeraFija == true){
		elementoActual = 0;
	}else{
		elementoActual = aleatorio(0,numElementos);
	}
	ultimoAleatorioGenerado = elementoActual;
	
	if(tipoDeGaleria == 1){//secuencial
		tipoGaleria = 1; //establecemos el tipo de galeria a secuencial
		elementoSiguiente = elementoActual + 1;
	}else{ //aleatoria
		tipoGaleria = 2;//establecemos el tipo de galeria a aleatoria
		elementoSiguiente = aleatorio(0,numElementos);
	}
	ultimoAleatorioGenerado = elementoSiguiente;
	//fin configuracion
	$('#imagenGaleriaCab' + elementoActual).show()
	transicionAutomaticaPrecarga();
}


//------------------------------------------------------------------------


function transicionAutomaticaPrecarga(){
	
	if(elementoSiguiente >= numElementos){
		elementoSiguiente = 0;
	}
	// lanzamos el efecto a los 5 segundos
	tiempo = setTimeout("muestraElementoPrecarga(" + elementoSiguiente + ")",6000);
}

//------------------------------------------------------------------------
/*
	Funcion para generar un numero aleatorio entre inferior y superior
*/
function aleatorio(inferior,superior){
	var valorFinal;
    numPosibilidades = superior - inferior;
    aleat = Math.random() * numPosibilidades; 
    aleat = Math.floor(aleat);
    valorFinal = parseInt(inferior) + aleat;
	
	//nos aseguramos de que el numero aleatorio no sea el mismo que el ultimo
	if (valorFinal == ultimoAleatorioGenerado){
		valorFinal = valorFinal + 1
		if (valorFinal == numElementos) {
			valorFinal = 0
		}
	}
	
	return valorFinal;
	//http://www.desarrolloweb.com/articulos/763.php
}
