// JavaScript Document

var galeria = false;

function init_ajustesVisuales() {
	var lastThingToLoad = document.getElementById("lastThingToLoad");
	if(lastThingToLoad != null && lastThingToLoad != 'undefined') {
		divPrincipal = document.getElementById("divPrincipal");
		imagen = document.getElementById("imagen-fondo");
		
		
		ajustarAResolucion();
		lanzaEventos();
	} else {
		setTimeout("init_ajustesVisuales()",100);
	}
}

function lanzaEventos() {
	checkearResize();
	efectoCargaImagen();

	setTimeout("lanzaEventos();",500);
}

var anchoDivPrincipal = 0;
var altoDivPrincipal = 0;
var divPrincipal = null;
var anchoDivPrincipal_minimo = 900;
var altoDivPrincipal_minimo = 600;
var modoAutoSizeHeight = true;
var modoAutoSizeWidth = true;

function checkearResize() {
	var nuevoAncho = 0;
	var nuevoAlto = 0;

	if(navigator.appName == "Microsoft Internet Explorer") {
		nuevoAlto = Math.max(document.body.clientHeight, document.documentElement.clientHeight);
		nuevoAncho = Math.max(document.body.clientWidth, document.documentElement.clientWidth);
	} else {
		nuevoAncho = window.innerWidth;
		nuevoAlto = window.innerHeight;
	}

	if(anchoDivPrincipal != nuevoAncho || altoDivPrincipal != nuevoAlto) {		
		anchoDivPrincipal = nuevoAncho;
		altoDivPrincipal = nuevoAlto;
		
		if(modoAutoSizeHeight && altoDivPrincipal <= altoDivPrincipal_minimo) {
			altoDivPrincipal = altoDivPrincipal_minimo;
			divPrincipal.style.height = altoDivPrincipal_minimo + "px";
			modoAutoSizeHeight = false;
		} else if(!modoAutoSizeHeight && altoDivPrincipal > altoDivPrincipal_minimo) {
			modoAutoSizeHeight = true;
			divPrincipal.style.height = "100%";
		} else if(!modoAutoSizeHeight) {
			altoDivPrincipal = altoDivPrincipal_minimo;			
		}
		
		if(modoAutoSizeWidth && anchoDivPrincipal <= anchoDivPrincipal_minimo) {
			anchoDivPrincipal = anchoDivPrincipal_minimo;
			divPrincipal.style.width = anchoDivPrincipal_minimo + "px";
			modoAutoSizeWidth = false;
		} else if(!modoAutoSizeWidth && anchoDivPrincipal > anchoDivPrincipal_minimo) {
			modoAutoSizeWidth = true;
			divPrincipal.style.width = "100%";
		} else if(!modoAutoSizeWidth) {
			anchoDivPrincipal = anchoDivPrincipal_minimo;			
		}
			
		ajustarImagen();
	}
}
	
var imgW = 1280;
var imgH = 852;

var imagen = null;

function ajustarImagen() {	
	var anchoImagen = 0;
	var altoImagen = 0;
		
	if(anchoDivPrincipal * imgH / imgW > altoDivPrincipal) {
		anchoImagen = anchoDivPrincipal;
		altoImagen = anchoImagen * imgH / imgW;
	} else {
		altoImagen = altoDivPrincipal;
		anchoImagen = altoImagen * imgW / imgH;
	}
	
    imagen.style.height = altoImagen + "px";
    imagen.style.width = anchoImagen + "px";
	
	if(anchoImagen > anchoDivPrincipal) {
		imagen.style.left = -(anchoImagen - anchoDivPrincipal) / 2 + "px";
	} else {
		imagen.style.left = 0;
	}
}

var imagenCargada = false;
var puntosCargandoImagen = 0;
var alfaImagen = 2;
var cargaImagenFinalizada = false;
var vecesEvento = 0;

function efectoCargaImagen() {
	anularCargaSuaveDeImagen = true;
	
	if(!imagenCargada) {
		var divCargando = document.getElementById("divCargando");
		
		if(imagen.complete) {
			divCargando.style.visibility = "hidden";
			imagenCargada = true;
			imagen.style.visibility = "visible";
			vecesEvento = 0;
		} else {
			if(vecesEvento%50==0) {
				var textoDivCargando = "Cargando fondo";
				
				if(puntosCargandoImagen == 4) {
					puntosCargandoImagen = 0;
				} else if(puntosCargandoImagen == 1) {
					textoDivCargando = textoDivCargando + ".";
				} else if(puntosCargandoImagen == 2) {
					textoDivCargando = textoDivCargando + "..";
				} else if(puntosCargandoImagen == 3) {
					textoDivCargando = textoDivCargando + "...";
				}
				
				divCargando.innerHTML = textoDivCargando;
				puntosCargandoImagen++;

			}
		}
	} else if (!cargaImagenFinalizada && vecesEvento%5==0) {
		if(alfaImagen < 100) {
			var alfa = alfaImagen+"";
			if(alfa.length<2) alfa = "0" + alfa;
		
			imagen.style.filter = "alpha(opacity="+alfa+")";
			imagen.style.opacity = "."+alfa+"";
			alfaImagen = alfaImagen + 2;
		} else {
			imagen.style.filter = "alpha(opacity=99)";
			imagen.style.opacity = ".99";
			cargaImagenFinalizada = true;
		}
	}
	
	if(anularCargaSuaveDeImagen) {
		imagen.style.filter = "alpha(opacity=99)";
		imagen.style.opacity = ".99";
		cargaImagenFinalizada = true;
	}
	
	if(!cargaImagenFinalizada) {
		vecesEvento++;
		if(vecesEvento > 100) vecesEvento = 0;
	}
}


function vIE(){return (navigator.appName=='Microsoft Internet Explorer')?parseFloat((new RegExp("MSIE ([0-9]{1,}[.0-9]{0,})")).exec(navigator.userAgent)[1]):-1;}


function ajustarAResolucion () {
	if(screen.width > 1100) {
		imagen.src = imagen.src.substring(0,imagen.src.length-4)+"_h.jpg";
		imgW = 1500;
		imgH = 1000;
	} else {
		imgW = 1153;
		imgH = 768;
	}
}

init_ajustesVisuales();
