var slide_controller;
var speed = 5000;

function playSlides() {
	document.getElementById("play").src = 'images/control/pause.png';
	document.getElementById("play").onmouseover = function() { this.src='images/control/pause_hover.png'; };
	document.getElementById("play").onmouseout = function() { this.src='images/control/pause.png'; };
	document.getElementById("play").onclick = pauseSlides
	
	slide_controller = setTimeout("nextSlide();", speed);
}

function nextSlide() {
	if (images[parseInt(current_image)+1] == undefined) {
		closeImage();
	} else if (images[parseInt(current_image)+1]['loaded'] == false) {
		clearTimeout(slide_controller);	
		slide_controller = setTimeout("nextSlide();", 250);
	} else {
		nextImage();	
		clearTimeout(slide_controller);	
		slide_controller = setTimeout("nextSlide();", speed);
	}
}

function pauseSlides() {
	clearTimeout(slide_controller);
	enableKeystrokes();
	document.getElementById("play").src = 'images/control/play.png';
	document.getElementById("play").onmouseover = function() { this.src='images/control/play_hover.png'; };
	document.getElementById("play").onmouseout = function() { this.src='images/control/play.png'; };
	document.getElementById("play").onclick = playSlides
}

function nextImage() {
	if (images[parseInt(current_image)+2] == undefined) {
		document.getElementById("next").src = 'images/control/next_disabled.png';
		document.getElementById("next").onmouseover = null;
		document.getElementById("next").onmouseout = null;
		document.getElementById("next").onclick = null;
	}
	
	if (images[parseInt(current_image)+1] != undefined) {
		if (images[parseInt(current_image)+1]['loaded']) {
			showImage(parseInt(current_image)+1, false);
		}
	}
}

function prevImage() {
	if (parseInt(current_image) == 0) {
		document.getElementById("prev").src = 'images/control/prev_disabled.png';
		document.getElementById("prev").onmouseover = null;
		document.getElementById("prev").onmouseout = null;
		document.getElementById("prev").onclick = null;
	}
	
	if (current_image > 0) {
		if (images[parseInt(current_image)-1]['loaded']) {
			showImage(parseInt(current_image)-1, false);
		}
	}	
}
