/***********************************************
* Ultimate Fade-In Slideshow (v1.5): © Dynamic Drive (http://www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for this script and 100s more.
***********************************************/
 
var fadebgcolor="white"
 
////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, 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;width:'+fadewidth+'px;height:'+fadeheight+'px;overflow:hidden;"><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);-moz-opacity:10;-khtml-opacity:10;background-color:'+fadebgcolor+'"></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);-moz-opacity:10;background-color:'+fadebgcolor+'"></div></div>')
document.write('<div id="master'+this.slideshowid+'" style="position:relative;"><div id="'+this.canvasbase+'_0" style="position:absolute;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);opacity:10;background-color:'+fadebgcolor+'"></div><div id="'+this.canvasbase+'_1" style="position:absolute;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);opacity:10;background-color:'+fadebgcolor+'"></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
	{
//		setTimeout( "this.startit();", 100 );
		this.startit();
	}

//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.opacity&&!obj.tempobj.filters)
obj.tempobj.style.opacity=obj.degree/101
/*
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{
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=""
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>'
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

//
//
//	Update the mfr/project name
this.captionref = ( this.curimageindex==0)? this.postimages.length-1 : this.curimageindex-1
UpdateCaptions( this.captionref )
//
//

}
 
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.opacity&&!crossobj.filters)
crossobj.style.opacity=this.degree/101
/*
else if (crossobj.style.MozOpacity)
crossobj.style.MozOpacity=this.degree/101
else if (crossobj.style.KhtmlOpacity)
crossobj.style.KhtmlOpacity=this.degree/100
*/
}
 
 
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()
}


/*********************************
// newfangled mods
*********************************/

function UpdateCaptions( item_id )
{
	mfr_object	= document.getElementById('manufacturer');
	prj_object	= document.getElementById('project');

	if( mfr_object )
	{
		mfr_object.innerHTML	= "<strong>Manufacturer:</strong>&nbsp; " + manufacturers[ item_id ];
		prj_object.innerHTML	= "<strong>Project:</strong>&nbsp;  " + projects[ item_id ];
	}
}


function ssPause(img,manufacturer,project)
{
	if (document.getElementById)
	{
		// this is the way the standards work
		var slideshowstill = document.getElementById('slideshowstill');
		var slideshow = document.getElementById('slideshow');
		var captions = document.getElementById('captions');
		var captionsstill = document.getElementById('captionsstill');
		var manufacturerstill = document.getElementById('manufacturerstill');
		var projectstill = document.getElementById('projectstill');
	}
	else if (document.all)
	{
		// this is the way old msie versions work
		var slideshowstill = document.all['slideshowstill'];
		var slideshow = document.all['slideshow'];
		var captions = document.all['captions'];
		var captionsstill = document.all['captionsstill'];
		var manufacturerstill = document.all['manufacturerstill'];
		var projectstill = document.all['projectstill'];
	}
	else if (document.layers)
	{
		// this is the way nn4 works
		var slideshowstill = document.layers['slideshowstill'];
		var slideshow = document.layers['slideshow'];
		var captions = document.layers['captions'];
		var captionsstill = document.layers['captionsstill'];
		var manufacturerstill = document.layers['manufacturerstill'];
		var projectstill = document.layers['projectstill'];
	}

	if (img)
	{
		// pause
		slideshowstill.innerHTML = '<img src="' + img + '">';
		slideshow.style.display = "none";
		slideshowstill.style.display = "block";

		manufacturerstill.innerHTML = "<strong>Manufacturer:</strong>&nbsp; " + manufacturer;
		projectstill.innerHTML = "<strong>Project:</strong>&nbsp; " + project;
		captions.style.display = "none";
		captionsstill.style.display = "block";
	}
	else 
	{
		// unpause
		slideshowstill.style.display = "none";
		slideshow.style.display = "block";	

		captionsstill.style.display = "none";
		captions.style.display = "block";
	}
}



/*********************************
//	event fading
*********************************/
var	CurrentEvent	= 0;

function ShowNextEvent()
{
	EventBox	= document.getElementById( 'events' );

	if( ++CurrentEvent >= eventlist.length )
	{
		CurrentEvent	= 0;
	}

//	for( fadeindex	= 100; fadeindex >= 0; fadeindex-- )
//	{
//		EventBox.style.opacity	= ( fadeindex / 100 );
//	}

	EventBox.style.opacity	= 1;
	eventfade	= setInterval( "FadeOut();", 100 );

//	EventBox.innerHTML	= eventlist[ CurrentEvent ];

//	for( fadeindex	= 0; fadeindex <= 100; fadeindex++ )
//	{
//		EventBox.style.opacity	= ( fadeindex / 100 );
//	}
//	eventfade	= setInterval( "FadeIn();", 100 );
}

function FadeOut()
{
	EventBox	= document.getElementById( 'events' );
	opvalue		= EventBox.style.opacity;

	opvalue		-= 0.2;

	if( opvalue <= 0 )
	{
		opvalue		= 0;
		EventBox.style.opacity	= opvalue;
		clearInterval( eventfade );
		EventBox.innerHTML	= eventlist[ CurrentEvent ];
		eventfade	= setInterval( "FadeIn();", 100 );

//		eventticker	= setTimeout( "ShowNextEvent();", 1000 );
	}

	EventBox.style.opacity	= opvalue;
}

function FadeIn()
{
	EventBox	= document.getElementById( 'events' );
	opvalue		= EventBox.style.opacity;

//	opvalue		+= 0.2;
//	opvalue		= parseFloat( opvalue );

	opvalue		= (( 100 * opvalue ) + 20 ) / 100;

	if( opvalue >= 1 )
	{
		opvalue	= 1;
		EventBox.style.opacity	= opvalue;
		clearInterval( eventfade );
		eventticker	= setTimeout( "ShowNextEvent();", 5000 );
	}

	EventBox.style.opacity	= opvalue;
}


