//var cIndex = 0;
//var delay = 5000;
//var cacheRef = null;
//var intervalRef = null;
var header_size = "4";

function SlideObject(image, headline, text) {
	this.image = new Image();
	this.image.src = image;
	this.headline = headline;
	this.text = text;
}

function setNextImage(id, left,starttext, stoptext, imagetext, h_size) {
	if (h_size)
		header_size = h_size;

	var intervalRef = new Function("return intervalRef_"+id+";");
	if(intervalRef() != null)
		stop(id, starttext, stoptext, imagetext);
	if(left) {
		//cIndex -= 2;
		var d = new Function("return cIndex_"+id+" -= 2;");
		d();
	}
	nextSlide(id,false,imagetext);
}

function start(id, starttext, stoptext, imagetext, h_size) {
	if (h_size)
		header_size = h_size;

	var intervalRef = new Function("return intervalRef_"+id+";");
	if(intervalRef() != null)
		stop(id, starttext, stoptext, imagetext);
	setDelay(id, false, imagetext);
	var set_intervalRef = new Function("x", "return intervalRef_"+id+" = x;");
	var delay = new Function("return delay_"+id+";");
	set_intervalRef(setTimeout("nextSlide('"+id+"',true,'"+imagetext+"');", delay()));
	getElement("slideshowcontrol_"+id, false).innerHTML = '<a href="jav' + 'ascr' + 'ipt:stop(\''+id+'\', \''+starttext+'\',\''+stoptext+'\',\''+imagetext+'\');" class="hrefh6">'+stoptext+'</a>';
}

function stop(id, starttext, stoptext, imagetext) {
	var intervalRef = new Function("return intervalRef_"+id+";");
	if(intervalRef() != null)
		clearTimeout(intervalRef());
	getElement("slideshowcontrol_"+id, false).innerHTML = '<a href="jav' + 'ascr' + 'ipt:start(\''+id+'\', \''+starttext+'\',\''+stoptext+'\',\''+imagetext+'\');" class="hrefh6">'+starttext+'</a>';
}

function setDelay(id, interactive, imagetext) {
	var intervalRef = new Function("return intervalRef_"+id+";");
	var set_intervalRef = new Function("x", "return intervalRef_"+id+" = x;");
	if(intervalRef() != null && interactive)
		clearTimeout(intervalRef());
	var delay = document.forms["slideShowForm_"+id]["delay"];
	var set_delay = new Function("x", "return delay_"+id+" = x;");
	set_delay(delay.options[delay.selectedIndex].value * 1000);
	if(interactive) {
		var delay = new Function("return delay_"+id+";");
		set_intervalRef(setTimeout("nextSlide('"+id+"',true,'"+imagetext+"');", delay()));
	}
}

function nextSlide(id, interactive, imagetext) {
	var slide;
	var a = new Function("return slides_"+id+";");
	slide = a();
	//cIndex += 1;
	var b = new Function("return cIndex_"+id+" += 1;");
	var c = new Function("x", "return cIndex_"+id+" = x;");
	var cIndex = b();
	if(cIndex > (slide.length - 1))
		cIndex = c(0);
	else if(cIndex < 0)
		cIndex = c(slide.length - 1);
// 	if(cacheRef == null)
// 		cacheRef = document.images["slideshowimage_"+id];
	document.images["slideshowimage_"+id].src = slide[cIndex].image.src;
	getElement("slideshowstatus_"+id, false).innerHTML = '<h' + header_size + ' class="textwhite">'+imagetext+' ' + (cIndex + 1) + ' (' + slide.length + ')</h' + header_size + '>';

	var texthtml = '<h' + header_size + '>' + slide[cIndex].headline + '</h' + header_size + '>';
	texthtml += '<span class="smallertext">' + slide[cIndex].text + '</span>';
	getElement("slideshowtextblock_"+id, false).innerHTML = texthtml;

	if(interactive) {
		var set_intervalRef = new Function("x", "return intervalRef_"+id+" = x;");
		var delay = new Function("return delay_"+id+";");
		set_intervalRef(setTimeout("nextSlide('"+id+"',true,'"+imagetext+"');", delay()));
	}
}
