// JavaScript Document
	// Browser Slide-Show script. With image cross fade effect for those browsers
		// that support it.
		// Script copyright (C) 2004-2008 www.cryer.co.uk.
		// Script is free to use provided this copyright header is included.
		var FadeDurationMS=1000;
		function SetOpacity(object,opacityPct)
		{
			// IE.
			object.style.filter = 'alpha(opacity=' + opacityPct + ')';
			// Old mozilla and firefox
			object.style.MozOpacity = opacityPct/100;
			// Everything else.
			object.style.opacity = opacityPct/100;
		}
		function ChangeOpacity(id,msDuration,msStart,fromO,toO)
		{
			var element=document.getElementById(id);
			var msNow = (new Date()).getTime();
			var opacity = fromO + (toO - fromO) * (msNow - msStart) / msDuration;
			if (opacity>=100)
			{
				SetOpacity(element,100);
				element.timer = undefined;
			}
			else if (opacity<=0)
			{
				SetOpacity(element,0);
				element.timer = undefined;
			}
			else 
			{
				SetOpacity(element,opacity);
				element.timer = window.setTimeout("ChangeOpacity('" + id + "'," + msDuration + "," + msStart + "," + fromO + "," + toO + ")",10);
			}
		}
		function FadeInImage(foregroundID,newImage,backgroundID)
		{
			var foreground=document.getElementById(foregroundID);
			if (foreground.timer) window.clearTimeout(foreground.timer);
		
			if (backgroundID)
			{
				var background=document.getElementById(backgroundID);
				if (background)
				{
					if (background.src)
					{
						foreground.src = background.src;	
						SetOpacity(foreground,300);
					}
					background.src = newImage;
					background.style.backgroundImage = 'url(' + newImage + ')';
					background.style.backgroundRepeat = 'no-repeat';
					var startMS = (new Date()).getTime();
					foreground.timer = window.setTimeout("ChangeOpacity('" + foregroundID + "'," + FadeDurationMS + "," + startMS + ",100,0)",10);
				}
			} else {
				foreground.src = newImage;
			}
		}
		var slideCache = new Array();
		function RunSlideShow(pictureID,backgroundID,imageFiles,displaySecs)
		{
			var imageSeparator = imageFiles.indexOf(";");
			var nextImage = imageFiles.substring(0,imageSeparator);
			FadeInImage(pictureID,nextImage,backgroundID);
			var futureImages = imageFiles.substring(imageSeparator+1,imageFiles.length)
				+ ';' + nextImage;
			setTimeout("RunSlideShow('"+pictureID+"','"+backgroundID+"','"+futureImages+"',"+displaySecs+")",
				displaySecs*1100);
			// Cache the next image to improve performance.
			imageSeparator = futureImages.indexOf(";");
			nextImage = futureImages.substring(0,imageSeparator);
			if (slideCache[nextImage] == null)
			{
				slideCache[nextImage] = new Image;
				slideCache[nextImage].src = nextImage;
			}
		}
