var numtabs = 4;

var loadcount=0;
var slidetimer = null;
var transitiontimer = null;
var activeslide = 1;
var prevslide = 4;
var fadespeed = 250; //Transition time in milliseconds, 0 = instant.
var slideshowspeed = 4000; //duration of each slide in milliseconds
var tabsfadetoo = 0;
function waitforload(e){
	loadcount++;
	if(loadcount == (numtabs*3)){ // both sizes of each tab and all slides have loaded
		startSlideshow();
	}
}

function startSlideshow(){
	slidetimer=setTimeout("autoNextSlide()", 2000);
}

function stopSlideshow(){
	clearTimeout(slidetimer);
	clearTimeout(transitiontimer);
}

function activateSlide(slidenumber, howactive){ // howactive is a decimal between 0 and 1
	if(typeof(howactive)=='undefined'){
		howactive = 0;
	}
	howactive = Math.round(100000*howactive)/100000;
	if(slidenumber == activeslide && howactive == 0){
		return;
	}
	if(howactive == 0){
		clearTimeout(transitiontimer);
		prevslide = activeslide;
		activeslide = slidenumber;
	}
	activeslide = slidenumber;
	for(var i=1; i <= numtabs; i++){
		if(i==slidenumber){
			document.getElementById('slide'+i).style.opacity=howactive;
			document.getElementById('slide'+i).style.filter='alpha(opacity='+(100*howactive)+')';
			if(tabsfadetoo==1){
				document.getElementById('slidetabinactive'+i).style.opacity=1-howactive;
				document.getElementById('slidetabinactive'+i).style.filter='alpha(opacity='+(100-(100*howactive))+')';
				document.getElementById('slidetabactive'+i).style.opacity=howactive;
				document.getElementById('slidetabactive'+i).style.filter='alpha(opacity='+(100*howactive)+')';
			}else if(Math.round(howactive)){
				document.getElementById('slidetabinactive'+i).style.opacity=0;
				document.getElementById('slidetabinactive'+i).style.filter='alpha(opacity=0)';
				document.getElementById('slidetabactive'+i).style.opacity=1;
				document.getElementById('slidetabactive'+i).style.filter='alpha(opacity=100)';
			}
		}else if(i == prevslide){
			document.getElementById('slide'+i).style.opacity=1-howactive;
			document.getElementById('slide'+i).style.filter='alpha(opacity='+(100-(100*howactive))+')';
			if(tabsfadetoo == 1){
				document.getElementById('slidetabinactive'+i).style.opacity=howactive;
				document.getElementById('slidetabinactive'+i).style.filter='alpha(opacity='+(100*howactive)+')';
				document.getElementById('slidetabactive'+i).style.opacity=1-howactive;
				document.getElementById('slidetabactive'+i).style.filter='alpha(opacity='+(100-(100*howactive))+')';
			}else if(Math.round(howactive)){
				document.getElementById('slidetabinactive'+i).style.opacity=1;
				document.getElementById('slidetabinactive'+i).style.filter='alpha(opacity=100)';
				document.getElementById('slidetabactive'+i).style.opacity=0;
				document.getElementById('slidetabactive'+i).style.filter='alpha(opacity=0)';
			}
		}else{
			document.getElementById('slide'+i).style.opacity='0';
			document.getElementById('slide'+i).style.filter='alpha(opacity=0)';
			document.getElementById('slidetabinactive'+i).style.opacity='1';
			document.getElementById('slidetabinactive'+i).style.filter='alpha(opacity=100)';
			document.getElementById('slidetabactive'+i).style.opacity='0';
			document.getElementById('slidetabactive'+i).style.filter='alpha(opacity=0)';
		}
	}
	if(howactive < 1){
		var delay;
		var step;
		//if(fadespeed > 500){
		//	step = 1/10;
		//	delay = fadespeed/10;
		//}else{
			step = 50/fadespeed;
			delay = 50;
		//}
			
		transitiontimer = setTimeout('activateSlide('+slidenumber+','+(howactive+step)+')', delay);
	}
}

function nextSlide(offset){
	activateSlide(((activeslide+numtabs+offset-1)%numtabs)+1, 0);
}

function autoNextSlide(){
	nextSlide(1);
	slidetimer=setTimeout("autoNextSlide()", slideshowspeed);
}

