var FADE=1;
var DELAY=2000;
var IS_INTRO='no';
var frame=null;
var time=FADE;
var delay=2000;
var transition=false;
var initialized=false;
var reverse=false;
var mainTimer=null;
var fadeTimer=null;
var tgt=null;

function init(){
	var ss=document.getElementById('slideshow');
	if(ss!==null&&ss.children!==null){
		frame=ss.firstChild;
		ss.onmousemove=pause;
		mainTimer=window.setTimeout(start,delay);
	}
}


function start(){
	var ss=document.getElementById('slideshow');
	if(ss===null||ss.children===null||ss.filters==null){
		return;
	}
	if(ss.children.length==1&&frame!=ss.firstChild){
		return;
	}
	if(ss.filters[0]){
		ss.filters[0].apply();
	}
	if(frame&&frame.style){
		frame.style.display="none";
	}
	if(ss.filters[0]){
		ss.filters[0].play(duration=time);
	}
	fadeTimer=window.setTimeout(finish,time*1000);
	transition=true;
}

function finish(){
	var ss=document.getElementById('slideshow');
	if(ss===null||ss.children===null){
		return;
	}
	transition=false;
	if(reverse){
		frame=frame.previousSibling;
		if(frame===null||(IS_INTRO!='no'&&frame==ss.firstChild)){
			frame=ss.lastChild;
	}
	reverse=false;
	}
	else{
		frame=frame.nextSibling;
		if(frame===null){
			frame=ss.firstChild;
			if(IS_INTRO!='no'){
				frame=frame.nextSibling;
			}
		}
	}
	if(ss.filters[0]){
		ss.filters[0].apply();
	}
	if(frame.style){
		frame.style.display="block";
	}
	if(ss.filters[0]){
		ss.filters[0].play(duration=time);
	}
	mainTimer=window.setTimeout(start,time*1000+delay);
	time=FADE;
}

function pause(){
	if(!transition){
		window.clearTimeout(fadeTimer);
		window.clearTimeout(mainTimer);
		mainTimer=window.setTimeout(start,(FADE*1000+delay));
	}
}

function flip(inReverse){
	if(!transition){
		window.clearTimeout(fadeTimer);
		window.clearTimeout(mainTimer);
		reverse=(inReverse==-1);
		time=0;
		start();
	}
}

window.onload=init;