// JavaScript Document<SCRIPT type="text/javascript">

var rep = "";  // Répertoire des images du diaporama (vide si meme repertoire que le fichier html)
var num = 0;
var myCounter;
var next_img = new Image;
next_img.src = rep+"pixel_transparent.gif"; 
var wPopup;
var tabImg;

var nb_img = tabImgSave.length;
//var nb_img1 = tabImgSave1.length;
	       

//
// Les trois fonctions suivantes (+ éventuellement, "mySplice")
// servent à mélanger un tableau quelconque à partir d'une
// permutation tirée aléatoirement
//

// Méthode "splice" si elle n'existe pas
//   tab : tableau
//   s   : début de la suppression
//   l   : nombre d'éléments à supprimer
function mySplice(s, l) {
	if(s+l > this.length) l = this.length-s;
		
	for(var i=s; i<this.length; ++i)
		this[i] = this[i+1];

	delete this[this.length-1];
	this.length--;
}

// Est-ce que la méthode "splice" est disponible ?
if(!Array.prototype.splice) {
	// Non, alors on utilise la version "maison"
	Array.prototype.splice = mySplice;
}

// Génère une fonctione sous-excédente
function fctSsExc() {
	var fct = new Array;
	for(var i=0; i<nb_img; i++) {
		fct[i] = Math.floor( Math.random()*(nb_img-i) );
	}
	return fct;
}

// Construit une permutation à partir d'une fonction sous-excédente
function buildSigma() {
	var fct_ss_exc = fctSsExc();
	var set_N       = new Array;

	for(var i=0; i<nb_img; i++) {
		set_N[i] = i;
	}

	var sigma = new Array;

	for(var i=0; i<nb_img; i++) {
		sigma[i] = set_N[fct_ss_exc[i]];
		set_N.splice(fct_ss_exc[i],1);
	}
	return sigma;
}

// Retourne une version mélangée du tableau passé en paramètre
function shuffleArray(myArray) {
	var sigma    = buildSigma();
	var newArray = new Array;

	for(var i=0; i<nb_img; i++) {
		newArray[i] = myArray[sigma[i]];
	}
	return newArray;
}
//
// Fin des fonctions de mélange
//


function next() {
	// Est-ce que l'image suivante est oréchargée ?
	if(next_img.complete) {
		// Oui, alors après le temps de pause choisi par l'utilisateur, cette image remplacera l'actuelle
		myCounter = setTimeout("launch()", 5000);
	}
	else {
		// Non, alors on continue d'attendre qu'elle le soit
		myCounter = setTimeout("next()", 250);
	}
}

function next1() {
	// Est-ce que l'image suivante est oréchargée ?
	if(next_img.complete) {
		// Oui, alors après le temps de pause choisi par l'utilisateur, cette image remplacera l'actuelle
		myCounter = setTimeout("launch1()", 5000);
	}
	else {
		// Non, alors on continue d'attendre qu'elle le soit
		myCounter = setTimeout("next1()", 250);
	}
}

// Lance le slideshow
function launchFirst() {

	tabImg = tabImgSave;
	next_img.src = rep+tabImg[0];
	launch();
}
function launchFirst1() {

	tabImg = tabImgSave1;
	next_img.src = rep+tabImg[0];
	launch1();
}

// Poursuit le slideshow
function launch() {
	// Si la fenêtre n'existe pas ou est fermée, on la réouvre
	if(!wPopup || wPopup.closed) {
		wPopup = window.open('', 'imgpopup', 'width=50, height=50, top='+(screen.height-50)/2+', left='+(screen.width-50)/2+', status=no, directories=no, toolbar=no, location=no, menubar=no, scrollbars=no, resizable=yes');
	}

	// On écrit le contenu de la fenêtre popup
	wPopup.document.clear();
	wPopup.document.write("<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"><HEAD><TITLE>Diaporama : "+(num+1)+"/"+nb_img+"</TITLE></HEAD>");

	// La fonction qui attend que l'image soit chargée et affichée pour redimensionner la fenêtre à la bonne taille
	wPopup.document.write('<SCRIPT language="JavaScript">\nfunction checkSize() { if(document.images && document.images[0].complete) { w = document.images[0].width+50; h = document.images[0].height+100; window.resizeTo(w, h); window.moveTo((screen.width-w)/2, (screen.height-h)/2); document.images[0].style.visibility = "visible"; window.focus(); if(opener.next_img.src != opener.rep+opener.tabImg[opener.num]) { opener.next_img.src = opener.rep+opener.tabImg[opener.num]; } } else { setTimeout("checkSize()", 250); } }\n</'+'SCRIPT>');
	
	wPopup.document.write('<BODY bgcolor="#000000" leftMargin="0" topMargin="0" marginWidth="0" marginHeight="0">');
	wPopup.document.write('<table width="100%" height="100%" align="center" cellpadding="0" cellspacing="0"><tr><td align="center"><strong><a style="cursor : pointer;" onclick="window.opener.Stop()"><font face="Arial" size="2" color="#ffb400">Fermer le Diaporama</font></a></strong></td></tr><tr valign="middle"><td align="center"><img src="'+next_img.src+'" border="0" onLoad="checkSize()" onClick="window.opener.stop()" style="visibility:hidden"></td></tr><tr><td align="center"><strong><a style="cursor : pointer;" onclick="window.opener.Stop()"><font face="Arial" size="2" color="#ffb400">Fermer le Diaporama</font></a></strong></td></tr></table>');
	wPopup.document.write('</BODY></HTML>');
	wPopup.document.close();
	num++;
	
	// On a passé toutes les images, on repart du début
	if(num == nb_img) num = 0;
	
	// Si "Répéter" n'est pas cochée, on stoppe le slideshow
	if(num == 0 && !true) {
		setTimeout("stop()", 5000);
		return false;
	}


	next();
}

// Poursuit le slideshow
function launch1() {
	// Si la fenêtre n'existe pas ou est fermée, on la réouvre
	if(!wPopup || wPopup.closed) {
		wPopup = window.open('', 'imgpopup', 'width=50, height=50, top='+(screen.height-50)/2+', left='+(screen.width-50)/2+', status=no, directories=no, toolbar=no, location=no, menubar=no, scrollbars=no, resizable=yes');
	}

	// On écrit le contenu de la fenêtre popup
	wPopup.document.clear();
	wPopup.document.write("<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr"><HEAD><TITLE>Diaporama : "+(num+1)+"/"+nb_img1+"</TITLE></HEAD>");

	// La fonction qui attend que l'image soit chargée et affichée pour redimensionner la fenêtre à la bonne taille
	wPopup.document.write('<SCRIPT language="JavaScript">\nfunction checkSize() { if(document.images && document.images[0].complete) { w = document.images[0].width+50; h = document.images[0].height+100; window.resizeTo(w, h); window.moveTo((screen.width-w)/2, (screen.height-h)/2); document.images[0].style.visibility = "visible"; window.focus(); if(opener.next_img.src != opener.rep+opener.tabImg[opener.num]) { opener.next_img.src = opener.rep+opener.tabImg[opener.num]; } } else { setTimeout("checkSize()", 250); } }\n</'+'SCRIPT>');
	
	wPopup.document.write('<BODY bgcolor="#000000" leftMargin="0" topMargin="0" marginWidth="0" marginHeight="0">');
	wPopup.document.write('<table width="100%" height="100%" align="center" cellpadding="0" cellspacing="0"><tr valign="middle"><td align="center"><img src="'+next_img.src+'" border="0" onLoad="checkSize()" onClick="window.opener.stop()" style="visibility:hidden"></td></tr></table>');
	wPopup.document.write('</BODY></HTML>');
	wPopup.document.close();
	num++;
	
	// On a passé toutes les images, on repart du début
	if(num == nb_img1) num = 0;
	
	// Si "Répéter" n'est pas cochée, on stoppe le slideshow
	if(num == 0 && !true) {
		setTimeout("stop()", 5000);
		return false;
	}


	next1();
}

// Stoppe le slideshow
function Stop() {
	clearTimeout(myCounter);
	if (wPopup) wPopup.close();
	// On réactive tous les éléments du formulaire
	// et on désactive le bouton "Stopper"
	//window.document.forms.settings.bLaunch.disabled  = false;
	//focusOnLaunch();
	//window.document.forms.settings.bStop.disabled    = true;
	//window.document.forms.settings.repeat.disabled   = false;
	//window.document.forms.settings.order[0].disabled = false;
	//window.document.forms.settings.order[1].disabled = false;
	//window.document.forms.settings.tempo.disabled    = false;
	num = 0;
}


