//------------------------------------------------------
//
// Web Viva para la revista En L@ ReD
// Precarga de imagenes
//
//------------------------------------------------------

// Para configurar este JavaScript tienes que modificar 
// Las variables que se indican a continuacion

// URL de la pagina que se carga tras la precarga
var Desprespreload="index_cs.htm";

// Longitud total de la barra
var Longbarra = 350;

// Ancho de la barra
var Amplbarra = 15;

// si tienes imagenes en la pagina precarga.html que esten situadas
// por encima de la barra. Debes indicar cuantas tienes [0,1,2...]
var imagenesanteriors = 3;

// Indica aqui el enlace a las imagenes a precargar. El enlace
// debe referirse a la pagina "precarga.html". Puedes aņadir
// todas las que desees. Ojo! En Explorer, si alguna no se 
// encuentra el script se para. En Netscape, si alguna no se
// encuentra no importa mucho, simplemente no se precarga
// pero el script sigue su curso

var imagenes = new Array();
imagenes[0]="image/bot0a.jpg";
imagenes[1]="image/bot0b.jpg";
imagenes[2]="image/bot1a.jpg";
imagenes[3]="image/bot1b.jpg";
imagenes[4]="image/bot2a.jpg";
imagenes[5]="image/bot2b.jpg";
imagenes[6]="image/bot3a.jpg";
imagenes[7]="image/bot3b.jpg";
imagenes[8]="image/bot4a.jpg";
imagenes[9]="image/bot4b.jpg";
imagenes[10]="image/bot5a.jpg";
imagenes[11]="image/bot5b.jpg";
imagenes[12]="image/bot6a.jpg";
imagenes[13]="image/bot6b.jpg";
imagenes[14]="image/bot7a.jpg";
imagenes[15]="image/bot7b.jpg";
imagenes[16]="image/res_publi.jpg";
imagenes[17]="image/spacer.gif";

// Indica aqui el enlace (referido a la pagina precarga.html)
// de los cuadros que se usan en la barra para indicar el
// estado de la carga (imagenes de 1x1 pixel)

var cuadro_on="image/azul.gif";
var cuadro_off="image/gris.gif";

//----------------------------------------
// A partir de aqui no hay que tocar nada
//----------------------------------------

if (document.images){
	var cuadres = new Array();
	// imagen 1x1 del cuadro cuando aun no esta cargado
	cuadres[0] = new Image(1,1);
	cuadres[0].src = cuadro_off;	
	// imagen 1x1 del cuadro cuando aun ya esta cargado
	cuadres[1] = new Image(1,1);
	cuadres[1].src = cuadro_on;
	// Definimos un vector que contendra las imagenes que 
	// hay que cargar
	var preimagenes = new Array();
	// Vector que indica si la imagen correspondiente a un elemento
	// dado ha sido cargada o no
    var carregat = new Array();
	// Calculamos el ancho de cada cuadro de la barra
	var Longcuadre = Math.floor(Longbarra/imagenes.length);
	// contador almacena el numero de imagenes ya cargadas
	var contador = 0;
	var temporitzador;
} else {
	location.replace(Desprespreload);
}
// Funcion que llena el vector preimagenes con 
// las fuentes de las imagenes a cargar. El
// vector "carregat" se pone a "false" (no cargadas)
function carga_imagenes() { 
	if (document.images){
        for (var i = 0; i < imagenes.length; i++) { 
				// Cada elemento del vector es un objeto Image
                preimagenes[i] = new Image();
                preimagenes[i].src = imagenes[i];
        }
        for (var i = 0; i < preimagenes.length; i++) { 
                carregat[i] = false;
        }
		// Lo enviamos a que efectue el primer test
        test_imagenes();
	}
}

// Funcion que comprueba que imagenes se han cargado
function  test_imagenes() {
	
        if (contador == preimagenes.length) { 
				// Todas han sido cargadas: anulamos la autollamada a esta funcion
				// y enviamos al usuario a la pagina final
    			clearTimeout(temporitzador);
               	location.replace(Desprespreload);
               	return;
        }
        for (var i = 0; i <= preimagenes.length; i++) {
				// Repasamos todas las imagenes y si aun tenemos
				// carregat de ese elemento como false y la imagen 
				// ya esta cargada cambiamos de color un cuadro en 
				// la barra de evolucion y aumentamos el contador de 
				// imagenes cargadas
                if (carregat[i] == false && preimagenes[i].complete) {
                    carregat[i] = true;
					real = contador+imagenesanteriors;
                    eval("document.images[" + real + "].src=cuadres[1].src");
                    contador++;
                }
        }
		// Si llegamos aqui es que aun no se han cargado todas las imagenes,
		// por tanto hacemos que se ejecute de nuevo esta rutina dentro de 
		// 10 milisegundos
        temporitzador = setTimeout("test_imagenes()",10);
}
