// JavaScript Document
//-------------FUNZIONE CHE FA LO SLIDESHOW CON BLEND DI UNA SERIE DI IMMAGINI-------------------
//			DATA CREAZIONE: 19/13/2009
//
//		- includere questa libreria
//		
//		- costruire una stringa con segno di divisione tra una foto ed un'altra il carattere ";"
//
//		- richiamare la funzione:
//			RunSlideShow(divid,imageid,n,displaySecs)
//				- divid --> id del div contenitore
//				- imageid --> id dell'immagine
//				- n --> posizione di partenza
//				- displaySecs --> secondi tra una foto ed un'altra
//
//		- ARRAY DI IMMAGINI:
//				imageFiles
//
//		-	variabile  "numero_slide"  che contiene il numero di immagini
//
///////////////////////////////////////////////////////////////////////////////////////////////////
//
//				ESEMPIO DI FUNZIONE DA METTERE NELLA PAGINA DA CARICARE AL BODY ONLOAD	
//				
//				-	RunSlideShow('divid','imageid',0,2);
//					
//				SCRIPT DA METTERE NELLA PAGINA PER CARICARE L'IMMAGINE
//				<script language="JavaScript">
//				
//					imageFiles[0].src="img/1.jpg";
//					imageFiles[1].src="img/2.jpg";
//					imageFiles[2].src="img/3.jpg";
//					imageFiles[3].src="img/4.jpg";
//					imageFiles[4].src="img/5.jpg";
//					
//					<//script>
//
///////////////////////////////////////////////////////////////////////////////////////////////////

var slideCache2 = new Array();			//dichiarazione dell'array per la cache delle immagini
var n2;									//variabile della posizione nell'array

/////////////////////////////////////////////////////////////////////////////////
/*			DICHIARATE NELLA PAGINA HTML
var numero_slide = 5;								//numero di immagini
var imageFiles = new Array();						//dichiarazione dell'array dellle immagini
for (i=0; i<numero_slide; i++){						//inizializzazione dell'array
imageFiles[i]=new Image();
}*/
//////////////////////////////////////////////////////////////////////////////////

//funzione che regola l'opacità
//function changeOpac(opacity, id)
//{
//var object = document.getElementById(id).style;
//object.opacity = (opacity / 100);
//object.MozOpacity = (opacity / 100);
//object.KhtmlOpacity = (opacity / 100);
//object.filter = "alpha(opacity=" + opacity + ")";
//}
//
//// funzione che attiva il blend sull'immagine
//function blendimage(divid, imageid, imagefile, millisec)
//{
//var speed = Math.round(millisec / 10);
//var timer = 0;
//
////mette la corrente immagine come background del div
//document.getElementById(divid).style.backgroundImage = "url(" + document.getElementById(imageid).src + ")";
//
////APPLICA all'immagine una trasparenza
//changeOpac(0, imageid);
//
////mette la nuova immagine nel campo immagine
//document.getElementById(imageid).src = imagefile;
//
////fa il blend dell'immagine
//for(i = 0; i <= 100; i++)
//		{
//		setTimeout("changeOpac(" + i + ",'" + imageid + "')",(timer * speed));
//		timer++;
//	}
//}

//funzione principale che si occupa di padssare le immagini alle altre funzioni
function RunSlideShow2(divid2,imageid2,n2,displaySecs)
{
		
		var imageSeparator = imageFiles2[n2].src;			//immagine di base
		var nextImage = imageFiles2[n2].src;				//immagine successiva
		changeOpac(0, imageid2);							//cambia l'opacità dell'immagine
		blendimage(divid2,imageid2,nextImage,100);		//attiva il blend sulla prossima immagine
		n2++;											//aumenta il contatore
		if(n2 >= numero_slide2) {									//se supero il limite metto il contatore a 0
			n2=0;										//array circolare
		}
		nextImage = imageFiles2[n2].src;					//prende la prossima immagine
		if (slideCache2[nextImage] == null)				//se non esiste nell'array della cache 
			{
			slideCache2[nextImage] = new Image;			//inizializza
			slideCache2[nextImage].src = nextImage;		//inserisce la prossima immagine
			}
			
			
	setTimeout("RunSlideShow2('"+divid2+"','"+imageid2+"',"+n2+","+displaySecs+")",displaySecs*1000);//richiama la funzione
	}

