
	/*
		------------------------------------------
		inserire l'array nello script della pagina
		------------------------------------------
       
	var fadeimages=new Array()

	//SET IMAGE PATHS. Extend or contract array as needed
	fadeimages[0]=["photo1.jpg", "", ""] 					//plain image syntax
	fadeimages[1]=["photo2.jpg", "http://www.cssdrive.com", ""] 		//image with link syntax
	fadeimages[2]=["photo3.jpg", "http://www.javascriptkit.com", "_new"] 	//image with link and target syntax
 
	var fadeimages2=new Array() 						//2nd array set example. Remove or add more sets as needed.

	//SET IMAGE PATHS. Extend or contract array as needed
	fadeimages2[0]=["photo1.jpg", "", ""] 					//plain image syntax
	fadeimages2[1]=["photo2.jpg", "http://www.cssdrive.com", ""] 		//image with link syntax
	fadeimages2[2]=["photo3.jpg", "http://www.javascriptkit.com", "_new"] 	//image with link and target syntax

	*/
 
	var fadebgcolor = "" //"black"

	////NO need to edit beyond here/////////////
 
	var fadearray=new Array() //array to cache fadeshow instances
	var fadeclear=new Array() //array to cache corresponding clearinterval pointers
 
	var dom=(document.getElementById) //modern dom browsers
	var iebrowser=document.all
 
	function fadeshow(theimages, fadeTop, fadeLeft, fadewidth, fadeheight, borderwidth, delay, pause, displayorder) {
		this.pausecheck=pause
		this.mouseovercheck=0
		this.delay=delay
		this.degree=10 //initial opacity degree (10%)
		this.curimageindex=0
		this.nextimageindex=1
		fadearray[fadearray.length]=this
		this.slideshowid=fadearray.length-1
		this.canvasbase="canvas"+this.slideshowid
		this.curcanvas=this.canvasbase+"_0"
		if (typeof displayorder!="undefined")
			theimages.sort(function() {return 0.5 - Math.random();}) //thanks to Mike (aka Mwinter) :)
		this.theimages=theimages
		this.imageborder=parseInt(borderwidth)
		this.postimages=new Array() //preload images
		for (p=0;p<theimages.length;p++){
			this.postimages[p]=new Image()
			this.postimages[p].src=theimages[p][0]
		}
 
		var fadewidth=fadewidth+this.imageborder*2
		var fadeheight=fadeheight+this.imageborder*2
 
		if (iebrowser&&dom||dom) //if IE5+ or modern browsers (ie: Firefox)
			document.write('<div id="master'+this.slideshowid+'" style="position:relative;top:'+fadeTop+';left:'+fadeLeft+';width:'+fadewidth+'px;height:'+fadeheight+'px;overflow:no;z-index:10;"><div id="'+this.canvasbase+'_0" style="position:absolute;width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);opacity:0.1;-moz-opacity:0.1;-khtml-opacity:0.1;background-color:'+fadebgcolor+';z-index:10;"></div><div id="'+this.canvasbase+'_1" style="position:absolute;width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);opacity:0.1;-moz-opacity:0.1;-khtml-opacity:0.1;background-color:'+fadebgcolor+';z-index:10;"></div></div>')
		else
			document.write('<div><img name="defaultslide'+this.slideshowid+'" src="'+this.postimages[0].src+'"></div>')
 
		if (iebrowser&&dom||dom) //if IE5+ or modern browsers such as Firefox
			this.startit()
		else{
			this.curimageindex++
			setInterval("fadearray["+this.slideshowid+"].rotateimage()", this.delay)
		}
	}

	function fadepic(obj){
		if (obj.degree<100){
			obj.degree+=10
		if (obj.tempobj.filters&&obj.tempobj.filters[0]){
			if (typeof obj.tempobj.filters[0].opacity=="number") //if IE6+
				obj.tempobj.filters[0].opacity=obj.degree
			else //else if IE5.5-
				obj.tempobj.style.filter="alpha(opacity="+obj.degree+")"
			}
		else if (obj.tempobj.style.MozOpacity)
			obj.tempobj.style.MozOpacity=obj.degree/101
		else if (obj.tempobj.style.KhtmlOpacity)
		obj.tempobj.style.KhtmlOpacity=obj.degree/100
		else if (obj.tempobj.style.opacity&&!obj.tempobj.filters)
		obj.tempobj.style.opacity=obj.degree/101
		}
		else{
			clearInterval(fadeclear[obj.slideshowid])
			obj.nextcanvas=(obj.curcanvas==obj.canvasbase+"_0")? obj.canvasbase+"_0" : obj.canvasbase+"_1"
			obj.tempobj=iebrowser? iebrowser[obj.nextcanvas] : document.getElementById(obj.nextcanvas)
			obj.populateslide(obj.tempobj, obj.nextimageindex)
			obj.nextimageindex=(obj.nextimageindex<obj.postimages.length-1)? obj.nextimageindex+1 : 0
			setTimeout("fadearray["+obj.slideshowid+"].rotateimage()", obj.delay)
		}
	}
 
	fadeshow.prototype.populateslide=function(picobj, picindex){
		var slideHTML=""
		slideHTML+='<table width="100%" height="100%"><tr><td valign="middle" align="center">'
		if (this.theimages[picindex][1]!="") //if associated link exists for image
			slideHTML='<a href="'+this.theimages[picindex][1]+'" target="'+this.theimages[picindex][2]+'">'
		slideHTML+='<img src="'+this.postimages[picindex].src+'" border="'+this.imageborder+'px">'
		if (this.theimages[picindex][1]!="") //if associated link exists for image
			slideHTML+='</a>'

		slideHTML+='</td></tr></table>' 
		picobj.innerHTML=slideHTML
	}
 
 
	fadeshow.prototype.rotateimage=function(){
		if (this.pausecheck==1) //if pause onMouseover enabled, cache object
			var cacheobj=this
			if (this.mouseovercheck==1)
				setTimeout(function(){cacheobj.rotateimage()}, 100)
		else if (iebrowser&&dom||dom){
			this.resetit()
			var crossobj=this.tempobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
			crossobj.style.zIndex++
			fadeclear[this.slideshowid]=setInterval("fadepic(fadearray["+this.slideshowid+"])",50)
			this.curcanvas=(this.curcanvas==this.canvasbase+"_0")? this.canvasbase+"_1" : this.canvasbase+"_0"
		}
		else{
			var ns4imgobj=document.images['defaultslide'+this.slideshowid]
			ns4imgobj.src=this.postimages[this.curimageindex].src
		}
		this.curimageindex=(this.curimageindex<this.postimages.length-1)? this.curimageindex+1 : 0
	}
 
	fadeshow.prototype.resetit=function(){
		this.degree=10
		var crossobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
		if (crossobj.filters&&crossobj.filters[0]){
			if (typeof crossobj.filters[0].opacity=="number") //if IE6+
			crossobj.filters(0).opacity=this.degree
		else //else if IE5.5-
			crossobj.style.filter="alpha(opacity="+this.degree+")"
		}
		else if (crossobj.style.MozOpacity)
			crossobj.style.MozOpacity=this.degree/101
		else if (crossobj.style.KhtmlOpacity)
			crossobj.style.KhtmlOpacity=this.degree/100
		else if (crossobj.style.opacity&&!crossobj.filters)
			crossobj.style.opacity=this.degree/101
	}
 
	fadeshow.prototype.startit=function(){
		var crossobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
		this.populateslide(crossobj, this.curimageindex)
		if (this.pausecheck==1){ //IF SLIDESHOW SHOULD PAUSE ONMOUSEOVER
			var cacheobj=this
			var crossobjcontainer=iebrowser? iebrowser["master"+this.slideshowid] : document.getElementById("master"+this.slideshowid)
			crossobjcontainer.onmouseover=function(){cacheobj.mouseovercheck=1}
			crossobjcontainer.onmouseout=function(){cacheobj.mouseovercheck=0}
		}
		this.rotateimage()
	}


	// ####################################################
	// codice per fade_singolo
	// ####################################################
	/*
	   in pagina eseguire queste tre righe:

		fadeTargetId = "objectId"; 
		fadePreInit();
		fadeInit();
	*/
	// ####################################################

	var fadeTargetId = ""; 
	var fadeTarget;
	var preInitTimer;
	var blnFinished = false;

	function fadePreInit() {
		if ((document.getElementById)&&(fadeTarget=document.getElementById(fadeTargetId))) {
			fadeTarget.style.visibility = "hidden";
			if (typeof preInitTimer != 'undefined') 
				clearTimeout(preInitTimer); 
		} else {
			preInitTimer = setTimeout("fadePreInit()",2);
		}
	}
	
	function fadeInit(nextStatement) {
		if (document.getElementById) {
			fadePreInit(); 
			/* 
			    shouldn't be necessary, but IE can sometimes get ahead of itself and trigger fadeInit first 
			    ---
			    set the initial opacity in a (hopefully) cross browser way
				notice that because of the way the 
				image is in front, and not obfuscated
				by another object we need to "fade out", i don't need a 
				fallback mechanism to show/hide the covering object...the image is just there, full stop 
			*/
			if (fadeTarget.style.MozOpacity!=null) {  
				/* Mozilla's pre-CSS3 proprietary rule */
				fadeTarget.style.MozOpacity = 0;
			} else if (fadeTarget.style.opacity!=null) {
				/* CSS3 compatible */
				fadeTarget.style.opacity = 0;
			} else if (fadeTarget.style.filter!=null) {
				/* IE's proprietary filter */
				fadeTarget.style.filter = "alpha(opacity=0)";
			}
			/* make the object visible again */
			fadeTarget.style.visibility = 'visible';
			blnFinished = false;
			window.setTimeout("fadeIn(0,"+nextStatement+")", 10);
		}	
	}
	
	function fadeIn(opacity,nextStat) {
	
		if (fadeTarget) {
			if (opacity <= 100) {
				if (fadeTarget.style.MozOpacity!=null) {

					/* Mozilla's pre-CSS3 proprietary rule */
					fadeTarget.style.MozOpacity = (opacity/100)-.001;
					/* the .001 fixes a glitch in the opacity calculation which normally results in a flash when reaching 1 */

				} else if (fadeTarget.style.opacity!=null) {
	
					/* CSS3 compatible */
					fadeTarget.style.opacity = (opacity/100)-.001;

				} else if (fadeTarget.style.filter!=null) {
	
					/* IE's proprietary filter */
					fadeTarget.style.filter = "alpha(opacity="+opacity+")";
	
					/* worth noting: IE's opacity needs values in a range of 0-100, not 0.0 - 1.0 */ 
				}
				opacity += 10;
				window.setTimeout("fadeIn("+opacity+","+nextStat+")", 150);
			} else {
				blnFinished = true;
				if (nextStat) {
					eval(nextStat);
				}
			}
		}
	}

