// Multi-Slides Written by Nicholas Juntilla 10-01-2007
// Updated 1/16/08
// Important: Background color needs to be set in Internet Explorer CSS, height and width, and main DIV needs to be relatively positioned
/*  function should be set like this function ss_load('slideShowName',totalSlides,delay,transitionSpeed,isOn,isRandom,isStartRandom) The slideshow name and variable name must be exactly the same */
function ss_load(mainName,totalSlides,delay,transitionSpeed,isOn,isRandom,isStartRandom){

//Default variables!
var ss_isOn=true; //Should the slideshow play on page load
var ss_isRandom=false; //Is next slide random?
var ss_isStartRandom=true; //Is the first slide on page load random?
var ss_delay=4; //How long is the delay in seconds
var ss_totalSlides=8; //*Important set total number of slides
var ss_transitionSpeed=2; //How long to fade in seconds 
var ss_mainName = "slideshow";
var thisObj = this;

//Do not edit below this point
var ss_curFrame=1;
var ss_lastFrame=[];
var ss_i=1;
var ss_n=100; 
var ss_offInterval=""; 
var ss_onInterval="";  
var ss_playTo=""; 
var ss_lastSwitch=false;
var browserName=navigator.appName;

this.goNext = ss_toNext;
this.goOff = ss_turnOff;
this.goOn = ss_turnOn;
this.goPauseShow = ss_pauseShow;
this.goAutoPlay = ss_autoPlay;
this.goNextBtn = ss_nextBtn;
this.goPrevBtn = ss_prevBtn;

	ss_isOn = isOn;
	ss_isRandom = isRandom;
	ss_isStartRandom = isStartRandom;
	ss_totalSlides = totalSlides;
	ss_delay = delay;
	ss_transitionSpeed = transitionSpeed;
	ss_mainName = mainName;
	for(var ss_o=1;ss_o<=ss_totalSlides;ss_o++){
		var eachSlide = document.getElementById(ss_mainName + ss_o);
		eachSlide.style.display = "none";
		eachSlide.style.opacity = "0";
		}
	if(ss_isStartRandom){
		var ss_b = Math.floor(Math.random()*ss_totalSlides) + 1;
		var randomSlide = document.getElementById(ss_mainName + ss_b);
		randomSlide.style.display = "block";
		randomSlide.style.opacity = .99;
		ss_curFrame = ss_b;
	}else{
		var staticSlide = document.getElementById(ss_mainName + "1");
		staticSlide.style.display = "block";
		staticSlide.style.opacity = .99;
		}
	if(ss_isOn){
		ss_autoPlay();
		ss_addHandlers();
		}
	

function ss_autoPlay(){
	ss_pauseShow();
	ss_playTo = window.setTimeout(ss_mainName + ".goNext()",ss_delay*1000);
}

function ss_addHandlers(){
	for(var ss_u=1;ss_u<=ss_totalSlides;ss_u++){
		var mainShow = document.getElementById(ss_mainName + ss_u);
			mainShow.onmouseover = function(){
			ss_pauseShow();
				}
			mainShow.onmouseout = function(){
			ss_autoPlay();
				}
			}
	}
	
	
function ss_pauseShow(){
	var slideDiv = document.getElementById(ss_mainName + ss_curFrame);
	clearTimeout(ss_playTo);
	clearTimeout(ss_offInterval);
	clearTimeout(ss_onInterval);
	if(browserName.toLowerCase().indexOf('microsoft')!=-1){
		if(slideDiv.style.filter!=""){
			slideDiv.filters[0].stop();
		}
	}
	slideDiv.style.display="block";
	slideDiv.style.visibility="visible"; 
	slideDiv.style.opacity=.99;
	ss_i=1;
	ss_n=100;
}
	
	
function ss_prevBtn(){
	ss_lastSwitch = true;
	ss_pauseShow();
	ss_n=0;
	ss_i=100;
	ss_turnOff();
	}
	
function ss_nextBtn(){
	ss_pauseShow();
	ss_n=0;
	ss_i=100;
	ss_turnOff();
	}
	
function ss_toNext(){ 
	var slideDiv = document.getElementById(ss_mainName + ss_curFrame);
	if(browserName.toLowerCase().indexOf('microsoft')!=-1){
		slideDiv.style.filter="progid:DXImageTransform.Microsoft.Fade(duration=" + ss_transitionSpeed + ")";  
		slideDiv.filters[0].apply();
		slideDiv.style.visibility="hidden"; 
		slideDiv.filters[0].play();
		slideDiv.onfilterchange=ss_turnOnMs;
	}else{
		ss_turnOff();
	}
}

	
function ss_turnOff(){ 
	var slideDiv = document.getElementById(ss_mainName + ss_curFrame);  
	ss_n = ss_n-2;
	slideDiv.style.opacity = ss_n/100; //for FF        
	if(ss_n<=0) {
		ss_n=100; 
		ss_pickFrame();
		slideDiv.style.display = "none";
		ss_turnOn();
	}else{
		ss_offInterval = window.setTimeout(ss_mainName + ".goOff()",ss_transitionSpeed*20);
	}
} 
	
function ss_turnOn(){ 
	var slideDivl = document.getElementById(ss_mainName + ss_curFrame); 
	slideDivl.style.display = "block"; 
	ss_i = ss_i+2;         
	slideDivl.style.opacity = ss_i/100; //for FF    
	if(ss_i>=100) {
		slideDivl.style.opacity = 1;
		slideDivl.style.visibility = "visible";
		ss_autoPlay();
		ss_i=1;
	}else{
		ss_onInterval = window.setTimeout(ss_mainName + ".goOn()",ss_transitionSpeed*20);
	}                                
} 
	
function ss_turnOnMs(){
	var slideDivo = document.getElementById(ss_mainName + ss_curFrame);
	//slideDivl.filters.item("DXImageTransform.Microsoft.Fade").apply();
	if(slideDivo.filters[0].status==0){
		slideDivo.style.display = "none";
		ss_pickFrame();
		slideDiv2 = document.getElementById(ss_mainName + ss_curFrame);
		slideDiv2.style.display="block"; 
		slideDiv2.style.visibility="hidden"; 
		slideDiv2.style.filter="progid:DXImageTransform.Microsoft.Fade(duration=" + 1 + ")"; 
		slideDiv2.filters[0].apply();
		slideDiv2.style.visibility="visible"; 
		slideDiv2.filters[0].play();
		slideDiv2.onfilterchange=ss_turnOffMs;
	}
}

function ss_turnOffMs(){
	var slideDivl = document.getElementById(ss_mainName + ss_curFrame);
	if(slideDivl.filters[0].status==0){
		ss_autoPlay();
	}
}
	
function ss_pickFrame(){
	if(ss_lastSwitch&&ss_lastFrame.length){
		ss_curFrame = ss_lastFrame.pop();
		ss_lastSwitch = false;
		}
	else if(ss_isRandom==true){
		var tmpFrame = ss_curFrame;
			while(tmpFrame==ss_curFrame){
				tmpFrame = Math.floor(Math.random()*ss_totalSlides) + 1;
				}
			ss_lastFrame.push(ss_curFrame);
			ss_curFrame = tmpFrame;
	}else{
	    if(ss_curFrame==ss_totalSlides){
			ss_lastFrame.push(ss_curFrame);
			ss_curFrame=1;
		}else{
			ss_lastFrame.push(ss_curFrame);
			ss_curFrame++;
			}
		}
	if(ss_lastFrame.length>5){
		ss_lastFrame.shift();
		}
	}
}
