function slideshow(NewImg, ids){
	NewImage = NewImg;
	LinkIDs = ids;
	ImgNum = 0;
	ImgLength = NewImage.length - 1;
	
	preload_image_object = new Image();
	
	for(i=0; i<ImgLength; i++) {
         preload_image_object.src = NewImage[i];
	}
}

function setSelected(linkId){
	elements = getElementsByClassName(document, 'imageLinks');
	
	for(i=0; i<elements.length; i++){
		elements[i].src = elements[i].getAttribute('tempSrc');
	}
	
	document.getElementById(linkId).src = document.getElementById(linkId).getAttribute('hsrc');
}

function changeImage(direction) {
	
	if (document.images) {
		ImgNum = ImgNum + direction;
		if (ImgNum > ImgLength) {
			ImgNum = 0;
		}
		if (ImgNum < 0) {
			ImgNum = ImgLength;
		}
		document.slideshow.src = NewImage[ImgNum];
		setSelected(LinkIDs[ImgNum]);
	}
}
	
function goToImage(image, linkId){
	document.slideshow.src = NewImage[image];	
	
	setSelected(linkId);
	
	(ImgNum=image);
	if (ImgNum > ImgLength) {
		ImgNum = 0;
	}
	if (ImgNum < 0) {
		ImgNum = ImgLength;
	}
}

function initialiseSlideImages(){
	elements = getElementsByClassName(document, 'imageLinks');
	for(j=0; j<elements.length; j++){
		var src = elements[j].getAttribute('src');
		var ftype = src.substring(src.lastIndexOf('.'), src.length);
		var hsrc = src.replace(ftype, '_o'+ftype);
		elements[j].setAttribute('hsrc', hsrc);
		elements[j].setAttribute('tempSrc', src);
	}
}
	

function getElementsByClassName(node, classname) {
	var a = [];
	var re = new RegExp('\\b' + classname + '\\b');
	var els = node.getElementsByTagName("*");
	for(var i=0,j=els.length; i<j; i++)
	if(re.test(els[i].className))a.push(els[i]);
	return a;
}