function extractFile(string){
    var m = string.match(/(.*)[\/\\]([^\/\\]+\.\w+)$/);
    //alert("path: " + m[1] + ", file: " + m[2]);
    //alert('extractFile');
    return m;
}

function showNextImage(evt)
{
	// get reference to controls 
	if (evt.srcElement)
	{
		// IE
		clickedImage = evt.srcElement;
		//mainPhotoControl = document.getElementById("photo").childNodes[0].childNodes[0].childNodes[0];	
		mainPhotoControl = document.getElementById("photo").childNodes[0].childNodes[0];		
	} 
	else 
	{
		// Firefox
		clickedImage = evt.target;
		//mainPhotoControl = document.getElementById("photo").childNodes[1].childNodes[1].childNodes[0];
		mainPhotoControl = document.getElementById("photo").childNodes[1].childNodes[1]; 
	}

	// un-select currently selected thumb
	thumbRow = clickedImage.parentNode.parentNode;
	for (i=0; i<thumbRow.childNodes.length; i++)
	{
		currentThumb = thumbRow.childNodes[i];
		if (currentThumb.className == "slide_selected")
		{
			currentThumb.className = "slide";
		}
	}
	// select the clicked thumb
	clickedImage.parentNode.className = "slide_selected";
	document.getElementById('current_pic').value = clickedImage.getAttribute('picindex'); //set current image for future reference	

	slideShowControls = document.getElementById('slideshowNav');	
	indexNumber = parseFloat(clickedImage.getAttribute('picindex'));
	oneBasedIndex = indexNumber + 1;
	prevImage = indexNumber - 1;
	nextImage = indexNumber + 1;
	
	// update navigation
	document.getElementById('img_index').innerHTML =  oneBasedIndex + " of " + document.getElementById('number_of_pics').value;
	prevLink = document.getElementById('prev_button').parentNode.href;
	nextLink = document.getElementById('next_button').parentNode.href;
	testParam = new RegExp('currentPic=(.*)'); 	// 'currentPic=(.*)(\&*)' 'currentPic=(\d*)'
	document.getElementById('next_button').parentNode.href = prevLink.replace(testParam,'currentPic=' + prevImage);
	document.getElementById('prev_button').parentNode.href = prevLink.replace(testParam,'currentPic=' + nextImage);	

	// get the file name and path to the newely selected image: we get the path from the big image and file name from the thumb - 
	// together they give us the path to the new file
	thumbInfo = new Array();
	bigImageInfo = new Array();
	thumbInfo = extractFile(clickedImage.src);
	bigImageInfo = extractFile(mainPhotoControl.src);

	// set the big image details
	var img = new Image();
	img.src = bigImageInfo[1] + '/' + thumbInfo[2];
	mainPhotoControl.className  = clickedImage.className;
	mainPhotoControl.width = img.width;
	mainPhotoControl.height = img.height;
	mainPhotoControl.src = img.src;	
}