/* Variable globale */
var listeDiaporamaImage = new Array();
var strDiaporamaDossier, strWidthImage, strHeightImage, strDiaporamaDiv, strDiaporamaDelaiImage;
var intervalImageDiaporama, intervalFadeDiaporama, intImage_enCours, intTransparence_enCours;
/* /Variable globale */

/* Function diaporama JavaScript */
function diaporamaImageChargement() {
	//Traitement
	var imagesList 		= Array(); 																//Liste des images pechargees
	var donneesList 	= diaporamaImageChargement.arguments; 		//Liste indefinie de valeur est passee a la function
	for( i=0; i<donneesList.length; i++ ) {
		//Push de l'image
		imagesList[i] 	= new Image;
		
		//Chargement de l'image
		if ( donneesList[i].indexOf("#")!=0 )
			imagesList[i].src = donneesList[i];
	}
}

/* *** C'EST CETTE FONCTION QUI DOIT ETRE MISE DANS LE ONLOAD DE LA PAGE *** */
/* *** NE PAS OUBLIER DE METTRE LA PREMIERE IMAGE DU DIAPORAMA (premier tag <image> du fichier XML) DANS LE DIV (strNomDiv) *** */
function diaporamaCharger( strFicherXML, strNomDiv ) {
	var objXML;
	
	if( strFicherXML != "" && strNomDiv != "" ) {
		strDiaporamaDiv = strNomDiv;
	
		if( window.XMLHttpRequest )
  	 var objXML = new XMLHttpRequest();
  	else if( window.ActiveXObject ) {
  		try {
				objXML = new ActiveXObject("Msxml2.XMLHTTP");
			} catch( e ) {
				try {
					objXML = new ActiveXObject("Microsoft.XMLHTTP");
				}catch( e ){ 
					objXML = null;
				}
			}
  	} else
  		objXML = null;
  	if( objXML ) {
  		objXML.onreadystatechange = function() { diaporamaLire( objXML ); };
			objXML.open( "GET", strFicherXML, true );
			objXML.send();
		}
	}
}
/* /*** C'EST CETTE FONCTION QUI DOIT ETRE MISE DANS LE ONLOAD DE LA PAGE *** */

function diaporamaLire( objXML ) {
	var nFor;
	if( objXML.readyState == 4 ) {
		strDiaporamaDossier = objXML.responseXML.documentElement.getAttribute( "dossier_image" );
		strWidthImage = objXML.responseXML.documentElement.getAttribute( "largeur_image" );
		strHeightImage = objXML.responseXML.documentElement.getAttribute( "hauteur_image" );
		strDiaporamaDelaiImage = parseFloat( objXML.responseXML.documentElement.getAttribute( "delai_image" ) );
		if( strDiaporamaDelaiImage < 750 ) //securite pour ne pas changer les image plus vite que l'effet de fade
			strDiaporamaDelaiImage = 750;
		for( nFor = 0; nFor < objXML.responseXML.getElementsByTagName( "image" ).length; nFor++ ) {
			listeDiaporamaImage.push( objXML.responseXML.getElementsByTagName( "image" )[ nFor ].childNodes[ 0 ].nodeValue );
			diaporamaImageChargement( strDiaporamaDossier + objXML.responseXML.getElementsByTagName( "image" )[ nFor ].childNodes[ 0 ].nodeValue );
		}
		diaporamaCommencer();
	}
}

function diaporamaCommencer() {
	//il doit y avoir au moins deux images dans un diaporama
	if( document.getElementById( strDiaporamaDiv ) && listeDiaporamaImage.length > 1 ) {
		document.getElementById( strDiaporamaDiv ).innerHTML = "<div style=\"position:relative;\"><img id=\"img_diaporama_image_dessous\" src=\""+ strDiaporamaDossier + listeDiaporamaImage[ 1 ] +"\" width=\""+ strWidthImage +"\" height=\""+ strHeightImage +"\" border=\"0\" alt=\"\" style=\"position:absolute; z-index:1; top:0px; left:0px;\" /><img id=\"img_diaporama_image_dessus\" src=\""+ strDiaporamaDossier + listeDiaporamaImage[ 0 ] +"\" width=\""+ strWidthImage +"\" height=\""+ strHeightImage +"\" border=\"0\" alt=\"\" style=\"position:absolute; z-index:2; top:0px; left:0px;\" /></div>";
		intImage_enCours = 0;
		intTransparence_enCours = 100;
		intervalImageDiaporama = setInterval( "diaporamaImageSuivante()", strDiaporamaDelaiImage ); //interval qui n'est jamais supprime
	}
}

function diaporamaImageSuivante() {
	if( document.getElementById( "img_diaporama_image_dessous" ) && document.getElementById( "img_diaporama_image_dessus" ) ) {
		document.getElementById( "img_diaporama_image_dessus" ).src = strDiaporamaDossier + listeDiaporamaImage[ intImage_enCours ];
		document.getElementById( "img_diaporama_image_dessus" ).style.filter = "alpha(opacity=100);";
		document.getElementById( "img_diaporama_image_dessus" ).style.MozOpacity = "1.0";
		document.getElementById( "img_diaporama_image_dessus" ).style.opacity = "1.0";
		if( intImage_enCours + 1 < listeDiaporamaImage.length )
			document.getElementById( "img_diaporama_image_dessous" ).src = strDiaporamaDossier + listeDiaporamaImage[ intImage_enCours + 1 ];
		else
			document.getElementById( "img_diaporama_image_dessous" ).src = strDiaporamaDossier + listeDiaporamaImage[ 0 ];
	}
	if( intervalFadeDiaporama )
		clearInterval( intervalFadeDiaporama );
	intervalFadeDiaporama = setInterval( "diaporamaFadeImage()", 50 );
}

function diaporamaFadeImage() {
	if( document.getElementById( "img_diaporama_image_dessous" ) && document.getElementById( "img_diaporama_image_dessus" ) ) {
		intTransparence_enCours = intTransparence_enCours - 10;
		if( intTransparence_enCours >= 0 ) {
			document.getElementById( "img_diaporama_image_dessus" ).style.filter = "alpha(opacity="+ intTransparence_enCours +");";
			document.getElementById( "img_diaporama_image_dessus" ).style.MozOpacity = intTransparence_enCours / 100;
			document.getElementById( "img_diaporama_image_dessus" ).style.opacity = intTransparence_enCours / 100;
		}
		if( intTransparence_enCours < 0 ) {
			clearInterval( intervalFadeDiaporama );
			if( intImage_enCours + 1 < listeDiaporamaImage.length )
				intImage_enCours++;
			else
				intImage_enCours = 0;
			intTransparence_enCours = 100;
		}
	} else
		clearInterval( intervalFadeDiaporama );
}
/* /Function diaporama JavaScript */
