function changeImage(image) {
	if ('showcase/'+image == $('galleryImage').getAttribute('src')) {
		return false;
	}
	fadeImage.fadeout();
	var startTime = new Date().getTime();
	endTime = startTime + 600;
	newImage = new Image;
	newImage.src = 'showcase/'+image;
	newImage.onload = wait(image);
}

function wait(image) {
	now = new Date().getTime();
	if (now < endTime) {
		var diff = (endTime - now) + 50;
		setTimeout(function() { placeNewImage(image) }, diff);
	} else {
		placeNewImage(image);
	}
}

function placeNewImage(image) {
	$('galleryImage').setAttribute('src','showcase/'+image);
	fadeImage.fadein();
}

function initImageReplacement() {
	fadeImage = new fx.Opacity('galleryImage',{duration: 600});
	var galleryList = $('thumbs').getElementsByTagName('a');
	images = new Array();
	for (var i=0; i<galleryList.length; i++) {
		nodeLink = galleryList[i];
		photoRef = nodeLink.href.substr(nodeLink.href.indexOf('photo=') + 6);
		nodeLink.setAttribute('onclick',"changeImage('"+photoRef+"'); return false;");
		nodeLink.setAttribute('href',"javascript: changeImage('"+photoRef+"');");
//		image = new Image;
		images[i] = 'showcase/'+photoRef;
	}
	imageObj = new Image();
	for (i=0; i<images.length; i++) {
		imageObj.src=images[i];
	}
}

addEvent(window, 'load', initImageReplacement);