/****
xfade.js (c)2007 SugarHill Works LLC - http://www.sugarhillworks.com
Rewrite of Image Cross Fade Redux: http://slayeroffice.com
*****/



var slideshow = new Array();
var i = 0;
				

// ********************************************************************************************************** //
// ********************************************************************************************************** //
// *********************************                                        ********************************* //
// *********************************      DO NOT EDIT ABOVE THIS LINE       ********************************* //
// *********************************                                        ********************************* //
// *********************************   SET SLIDESHOW IMAGE FILENAMES BELOW  ********************************* //
// *********************************                                        ********************************* //
// ********************************************************************************************************** //
// ********************************************************************************************************** //
//
//
//
// Note the slideshowNames[n] should be set to the photographerNames[n] as listed in siteSettings.js
// If typing in names manually, note that they must match exactly to values set in siteSettings.js for name
// highlighting to occur (Case-sensitive).
//
//
//
//
//
//---------------------------------------------------------------------------



//--------------------slideshow image 1
slideshow[i++] = {
	fileName: "products-027271.jpg"
};
//-------------------


//--------------------slideshow image 2
slideshow[i++] = {
	fileName: "products-027279.jpg"
};
//-------------------


//--------------------slideshow image 3
slideshow[i++] = {
	fileName: "products_277.jpg"
};
//-------------------


//--------------------slideshow image 4
slideshow[i++] = {
	fileName: "products-027295.jpg"
};
//-------------------


//--------------------slideshow image 5
slideshow[i++] = {
	fileName: "products_260.jpg"
};
//-------------------


//--------------------slideshow image 6
slideshow[i++] = {
	fileName: "products_233.jpg"
};
//-------------------


//--------------------slideshow image 7
slideshow[i++] = {
	fileName: "products-027305.jpg"
};
//-------------------


//--------------------slideshow image 8
slideshow[i++] = {
	fileName: "products-027307.jpg"
};
//-------------------




// ********************************************************************************************************** //



// randomize the order
//slideshow.sort( randOrd );

var d = document; 
var imgs = new Array();
//var zInterval = null;
var current=0;

var leftNum = 0;
//var namesR_a = new Array(), namesL_a = new Array();
//var namesR_li = new Array(), namesL_li = new Array();
//
//var cNamesOnCol = new Array();
//var cNamesOffCol = new Array();

var ssRunning;
var nPause;
var lastRun;
var fadeComplete = new Boolean();



//poll to see if the slideshow stalled 
function ssts() {
	if (nPause == 'paused') {
			return;
	}
	var rnow = new Date();
	if ((rnow - lastRun) > 2250) {
		window.clearTimeout(ssRunning);
		if(fadeComplete != true) {
			return;
		}
		else {
			so_xfade(ssRunning, 'run', null, null);
		}
	}
}
setInterval("ssts();",2000);


	function posImgs(i) {
		// redundant positioning code is for Safari image rendering bug and IE not supporting image onload ...
		imgs[i].style.visibility = "hidden";
		var imgsW = imgs[i].width;
		var imgsH = imgs[i].height;
		if ((imgsW < 1) || (imgsH < 1)){
			setTimeout("posImgs("+i+");",10);
		}
		imgs[i].style.position = "absolute";
		imgs[i].style.left = "0px";
		imgs[i].style.top = "0px";
		//imgs[i].style.left = Math.round((maxvpW - imgsW) / (2)) + "px";
		//imgs[i].style.top = Math.round(((maxvpH - imgsH) / (2)) + 15) + "px"; // 30 is the height of the hdr div
		if(i == 0) {
			imgs[0].xOpacity = .99;
			imgs[0].style.filter = "alpha(opacity=99)";
			imgs[0].style.filter = "progid:dximagetransform.microsoft.alpha(opacity=99)";
			imgs[0].style.MozOpacity = "1";
			imgs[0].style.opacity = "1";
		}
		else {
			imgs[i].xOpacity = 0;
			imgs[i].style.filter = "alpha(opacity=0)";
			imgs[i].style.filter = "progid:dximagetransform.microsoft.alpha(opacity=0)";
			imgs[i].style.MozOpacity = "0";
			imgs[i].style.opacity = "0";
		}
	}
function so_init() {
	
	var xfsoContainer = d.getElementById("xfsoContainer");
	xfsoContainer.style.border = "none";

	imgs = xfsoContainer.getElementsByTagName("img");
	
	if(!d.getElementById || !d.createElement)return;
	


	
	// position the images
	for(var i = 0; i < imgs.length; i++) {
		posImgs(i);
	}
	

	//show the first image
	imgs[0].style.visibility = "visible";
	
	//start slideshow
	ssRunning = setTimeout("so_xfade(ssRunning, 'run', null)",2500);
	
	if (slideshow.length > 4 ) {
		//load the  remaining images
		for(var i = 5; i < slideshow.length; i++) {
			imgs[i] = d.createElement("img");
			imgs[i].src = sPicsFolder + slideshow[i].fileName;
			posImgs(i);
			xfsoContainer.appendChild(imgs[i]);
		}
	}

	return ssRunning;//, namesOnCol, namesOffCol;
}







function so_xfade(ssRunning, nPause) {//, pNum , rNum) {
	// get opacity values for current and next images
	cOpacity = imgs[current].xOpacity;
	// make moused-over photographer's work the next image to fade in
//	if(nPause == 'paused')
//	{ 
//		window.clearTimeout(ssRunning);
//		for (var pi = 0; pi < imgs.length; pi++) {
//			if(imgs[pi].alt == photographerNames[pNum]) {
//				nIndex = pi;
//				break;
//			}
//		}
//	}
//	else {
		nIndex = imgs[current+1]?current+1:0;
//	}
	nOpacity = imgs[nIndex].xOpacity;
	
	//increment the opacity of each image
	cOpacity-=.08; // smaller values here increase the number of loops - and slow the fade down
	nOpacity+=.08; // larger values make the fade faster, but may be more 'choppy'
	imgs[nIndex].style.position = "absolute";
	imgs[nIndex].style.left = "0px";
	imgs[nIndex].style.top = "0px";
	//imgs[nIndex].style.left = ((maxvpW - imgs[nIndex].width) / (2)) + "px";
	
	imgs[nIndex].style.visibility = "visible";
	imgs[current].xOpacity = cOpacity;
	imgs[nIndex].xOpacity = nOpacity;
	
	setOpacity(imgs[current]);
	setOpacity(imgs[nIndex]);



   
	
	// things to do one time when the xfade is complete
	if(cOpacity<=0) {
		current = nIndex;
		lastRun = new Date();
		fadeComplete = true;
	}
	else {
		fadeComplete = false;
		if (nPause == 'paused') { 
			setTimeout("so_xfade(null,'paused')", 0);//<-larger value here = slower fade    //,"+pNum+"
		}
		else {
			setTimeout("so_xfade(null,'run')", 0);//<-larger value here = slower fade    //,"+pNum+"
		}
	}
	
	
	
	
	function setOpacity(obj) {
		if(obj.xOpacity>.99) {
			obj.xOpacity = .99;
			return;
		}
		obj.style.opacity = obj.xOpacity;
		obj.style.MozOpacity = obj.xOpacity;
		obj.style.filter = "alpha(opacity=" + (obj.xOpacity*100) + ")";
	}
	
}

