var img, imgTemp, texte, groupe, date, zone, liendiapo, urlPhoto, fond;
var ligne, loading, idTempo=0, idTempoDiapo, thumb;
var opacity=100, n, i=1, termine=false, speed=20;


var angle1 = new Image();
angle1.src = "data/images/angle1.png";
var angle2 = new Image();
angle2.src = "data/images/angle2.png";
var angle3 = new Image();
angle3.src = "data/images/angle3.png";
var angle4 = new Image();
angle4.src = "data/images/angle4.png";
var chargement = new Image();
chargement.src = "data/images/loading.gif";

function afficher(image, largeur, hauteur) {
	window.open("data/images/image.php?id=" + image + ".jpg", "fenetre", "width=" + (largeur + 20) +",height=" + (hauteur + 20));
}


function init() {
	loading = document.getElementById("loading");
	img = document.getElementById("vue");
	texte = document.getElementById("texte");
	zone = document.getElementById("zone");
	fond = document.getElementById("fond");

	termine = true;
}

function makeRequest(tb, date, idgroupe, numero) {
	urlPhoto = tb.src.substr(0, tb.src.indexOf("tb-")) + tb.src.substr(tb.src.indexOf("tb-") + 3);
	if (termine && img.src != urlPhoto) {
		termine = false;

		imgTemp = new Image();
		imgTemp.src = urlPhoto;
		setTimeout("wait()", 20);

		// Afficher LOADING
		fond.style.display = "inline";
		// Calcul de la largeur de la fenêtre pour Mozilla et Opera
		if (n) {
			largeur_f = window.innerWidth;
			hauteur_f = window.innerHeight;
		}
		// Pour Internet Explorer
		else {
			largeur_f = document.body.clientWidth;
			hauteur_f = document.body.clientHeight;
		}
		loading.style.top = (((hauteur_f - 100) / 2) - 20) + "px";
		loading.style.left = ((largeur_f - 210) / 2) + "px";
		loading.style.display = "inline";

		i = 1;
		thumb = tb;

		fondu();

		var httpRequest = false;
		if (window.XMLHttpRequest) { // Mozilla, Safari,...
			httpRequest = new XMLHttpRequest();
			if (httpRequest.overrideMimeType) {
				httpRequest.overrideMimeType('text/html');
			}
		}
		else {
			if (window.ActiveXObject) { // IE
				try {
					httpRequest = new ActiveXObject("Msxml2.XMLHTTP");
				}
				catch (e) {
					try {
						httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
					}
					catch (e) {}
				}
			}
		}
		if (!httpRequest) {
			alert('Abandon :( Impossible de créer une instance XMLHTTP');
			return false;
		}
		//httpRequest.onreadystatechange = function() { chargeImage(httpRequest); };
		httpRequest.open('GET', "data/ajax/ajax_fisheye.php?date=" + date + "&idgroupe=" + idgroupe + "&numero=" + numero, true);
		httpRequest.send(null);
	}
}


function fondu() {
	clearTimeout(idTempo);
	//Disparition
	if (i == 1) {
		opacity = opacity - 2;
		if (opacity != 0) {
			idTempo = setTimeout("fondu()", speed);
		}
	}
	//Apparition
	else {
		opacity = opacity + 5;
		if (opacity > 100)
			opacity = 100;
		if (opacity != 100)
			idTempo = setTimeout("fondu()", speed / 2);
		else {
			clearTimeout(idTempo);
			termine = true;
			loading.style.display = "none";
		}		
	}

	if (n)
		zone.style.opacity = (opacity / 100).toString();
	else
		zone.style.filter = "alpha(opacity=" + opacity + ")";
}


function wait() {
	// Photo chargée
	if (imgTemp.complete == true) {
		clearTimeout(idTempo);
		i = 0;
		fondu();
		img.src = imgTemp.src;
		texte.innerHTML = thumb.title;
		
		fond.style.display = "none";
	}
	// Photo en chargement
	else
		setTimeout("wait()", 10);
}
