/*****
Slideshow code from:
	Image Cross Fade Redux
	Version 1.0
	Last revision: 02.15.2006
	steve@slayeroffice.com
	Rewrite of old code found here: http://slayeroffice.com/code/imageCrossFade/index.html
*****/

var delay = 6000;
var slides = new Array();
var current = 0;
var loadedCount = 0;
var pause = false;
var slidesTimeout;
var fadeTimeout;

function initSlideshow() {
	if(document.getElementById && document.createElement && (document.getElementById("slideshowContainer") != null)) {
		slides = document.getElementById("slideshowContainer").getElementsByTagName("div");
		for(i = 0; i < slides.length; i++) {
			slides[i].xOpacity = 0;

			/* CENTERING DOESNT WORK IN IE - ARGH */
			
			if (!document.all) {
				// Check the images, centering them if necessary
				var imgs = slides[i].getElementsByTagName("img"); // there should be only 1 image per slide
				if ((387 - imgs[0].width) > 10) {
					slides[i].style.left = (387 - imgs[0].width)/2;
				}
			} 
		}
		slides[0].style.display = "block";
		slides[0].xOpacity = .99;
		
		playSlides();		
	}
}

function playSlides() {
	clearTimeout(slidesTimeout);
	clearTimeout(fadeTimeout);
	document.getElementById("slidePlayButton").style.display = "none";
	document.getElementById("slidePauseButton").style.display = "inline";
	pause = false;
	slidesTimeout = setTimeout(xfadeSlide, delay);
}
function pauseSlides() {
	clearTimeout(slidesTimeout);
	clearTimeout(fadeTimeout);
	document.getElementById("slidePlayButton").style.display = "inline";
	document.getElementById("slidePauseButton").style.display = "none";
	
	nIndex = slides[current+1]?current+1:0;
	
	slides[current].xOpacity = .99;
	setObjectOpacity(slides[current]);
	slides[current].style.display = "block";
	
	slides[nIndex].xOpacity = 0;
	setObjectOpacity(slides[nIndex]);
	slides[nIndex].style.display = "none";

	pause = true;
}
function nextSlide() {
	pauseSlides();

	nIndex = slides[current+1]?current+1:0;
	
	slides[current].xOpacity = 0;
	setObjectOpacity(slides[current]);
	slides[current].style.display = "none";
	
	slides[nIndex].xOpacity = .99;
	setObjectOpacity(slides[nIndex]);
	slides[nIndex].style.display = "block";
	
	current = nIndex;
}
function previousSlide() {
	pauseSlides();

	nIndex = (current-1 < 0)?(slides.length-1):current-1;
	
	slides[current].xOpacity = 0;
	setObjectOpacity(slides[current]);
	slides[current].style.display = "none";
	
	slides[nIndex].xOpacity = .99;
	setObjectOpacity(slides[nIndex]);
	slides[nIndex].style.display = "block";
	
	current = nIndex;
}

function xfadeSlide() {
	clearTimeout(fadeTimeout);
	clearTimeout(slidesTimeout);
	nIndex = slides[current+1]?current+1:0;
	
	slides[nIndex].style.display = "block";
	slides[current].xOpacity -= 0.05;
	slides[nIndex].xOpacity  += 0.05;
	
	setObjectOpacity(slides[current]);
	setObjectOpacity(slides[nIndex]);
	
	if (!pause) {
		if(slides[current].xOpacity<=0) {
			slides[current].style.display = "none";
			current = nIndex;
				slidesTimeout = setTimeout(xfadeSlide, delay);
		} else {
			fadeTimeout = setTimeout(xfadeSlide, 50);
		}
	}
}

function setObjectOpacity(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) + ")";
}

if (document.getElementById && document.createElement) {
	addEvent(window, 'load', initSlideshow);
}

