// Slideshow JavaScript
// Pass an array for the images and captions to initiate values
var ImageNum = 0;
var number_of_image = 0;
var urlRef = 1;
var previousLink = "";
var currentProgress = "";
var nextLink = "";

function initiateSlideshow(images,captions) {
var imageArray = new Array();
var captionArray = new Array();

for (i=0; i < images.length; i++) { // load values - length for images and captions must be the same
	imageArray[i] = new imageItem(images[i]);
	// alert(imageArray[i]);
	if (i < captionArray.length)
		{ captionArray[i] = captions[i]; 
		alert(i);}

	// else	
	// 	{ captionArray[i] = ""; 
	// 	alert(i + "else");}
	// alert(captionArray[i]);
	}
number_of_image = imageArray.length;
}

function imageItem(image_location) {
this.image_item = new Image();
this.image_item.src = image_location;
}
/* function get_ImageItemLocation(imageObj) {
return(imageObj.image_item.src)
} */

function getNextImage() {
// alert("ImageNum: " + ImageNum + "\nnumber_of_image: " + number_of_image);
ImageNum = (ImageNum+1) % number_of_image;
// var new_image = get_ImageItemLocation(imageArray[ImageNum]);
// alert("Image: imageArray[" + ImageNum + "] \nValue: " + imageArray[ImageNum]);
var new_image = imageArray[ImageNum];
return(new_image);
}

function getPrevImage() {
if (ImageNum > 0 )
	ImageNum = (ImageNum-1) % number_of_image;
else 
	ImageNum = (imageArray.length-1) % number_of_image;

// alert("ImageNum: " + ImageNum);	
// var new_image = get_ImageItemLocation(imageArray[ImageNum]);
var new_image = imageArray[ImageNum];
return(new_image);
}

function prevImage(place) {
var new_image = getPrevImage();
document[place].src = new_image;
theCaption = captionArray[ImageNum];

displayCaption();
showProgress();
// alert("Width: " + document['imgMain'].width + "\nHeight: " + document['imgMain'].height);
}
function nextImage(place) {
// alert("In nextImage - before equation - ImageNum: " + ImageNum);
ImageNum = ++ImageNum % number_of_image;
// alert("ImageNum: " + ImageNum + "\nCaption: " + captionArray[ImageNum]);

var new_image = imageArray[ImageNum];
document[place].src = new_image;
// document['imgMain'].src = imageArray[place]; Include caption
// alert("ImageNum: " + ImageNum + "\nCaption: " + captionArray[ImageNum]);

theCaption = captionArray[ImageNum];
// alert(captionArray[0] + " and " + ImageNum);
// alert("ImageNum: " + ImageNum);
// alert(eval(document.getElementById('slideshow-image-caption').innerHTML));


displayCaption();
showProgress();
// alert("Width: " + document['imgMain'].width + "\nHeight: " + document['imgMain'].height);
}

function imageSwap(imgIndex) {
if (document.URL.indexOf('position=') > 1 && urlRef == 1)// Account for links to a specific image
	{
	// alert("Uses position=" + document.URL.indexOf('position=') + "\nNum: " + document.URL.charAt(document.URL.indexOf('position=') + 9)); // loop through until 
	
	var imagePosition = document.URL.charAt(document.URL.indexOf('position=') + 9);
	var new_image = imageArray[imagePosition];
	// var new_image = get_ImageItemLocation(imageArray[imagePosition]);
	// alert("Uses position=" + document.URL.indexOf('position=') + "\nNum: " + document.URL.charAt(document.URL.indexOf('position=') + 9) + "\nValue: " + imageArray[imagePosition]);
	theCaption = captionArray[imagePosition];
	urlRef = 0;
	ImageNum = imagePosition;
	// alert("In imageSwap - ImageNum: " + ImageNum);
	}
else {
	// alert("get_ImageItemLocation(imageArray[" + imgIndex + "]) \nValue is: " + imageArray[imgIndex]);
	// var new_image = get_ImageItemLocation(imageArray[imgIndex]);
	var new_image = imageArray[imgIndex];
	theCaption = captionArray[imgIndex];
	}
document['slideshowimage'].src = new_image;
// document['imgMain'].width = new_image.width;
// theCaption = captionArray[imgIndex];
if (theCaption != eval("undefined")) 
	{ document.getElementById('slideshow-image-caption').innerHTML=theCaption; }

showProgress();
// alert("Width: " + document['imgMain'].width + "\nHeight: " + document['imgMain'].height);

}

function showProgress() {
if (ImageNum != 0) {
	previousLink = "<a href=\"#\" onClick=\"prevImage('slideshowimage')\" class=\"previous-slide\">Previous Image</a>";
	
}
else { previousLink = ""; }
if ((ImageNum + 1) != number_of_image) {
	nextLink = "<a href=\"#\" onClick=\"nextImage('slideshowimage')\" class=\"next-slide\">Next Image</a>";
	// nextLink = "<span onClick=\"nextImage('slideshowimage')\" class=\"next\">Next Image</span>";
}
else { nextLink = ""; }
currentProgress = previousLink + " " + (ImageNum + 1) + "/" + number_of_image + " " + nextLink;
document.getElementById('slideshow-progress').innerHTML=currentProgress;
}

function displayCaption() {
	if (theCaption != eval("undefined")) 
	{ document.getElementById('slideshow-image-caption').innerHTML=theCaption; }
}
