//----------------------------------------------------------------------------
// Slideshow script copyright (c) 2010 Starburst Publishing Pty. Ltd.
// All rights reserved. Commercial use of this script without
// written authorisation from Starburst Publishing Pty. Ltd. is prohibited.
// For more information contact stever@starburstpublishing.com.au.
//----------------------------------------------------------------------------
// Adjustment variables
//----------------------------------------------------------------------------
var ss_speed = 10;						// Speed of scroll in millisecs, higher = slower
var ss_velocity = 5;					// Speed of scroll in pixels, higher = faster
var ss_delay = 3000;					// Delay before scrolling next image
var ss_imgwidth = 320;				// Image width in pixels
var ss_imgheight = 213;				// Image height in pixels
var ss_numimages = 6;					// Number of images in slideshow
var ss_elembase = "photo0";		// Base name of containing DIVs
//----------------------------------------------------------------------------
// Don't mess with anything below this line
//----------------------------------------------------------------------------
var ss_curelem = 1;
var ss_oldelem = 1;
var ss_xdir = 0;
var ss_ydir = 0;
var ss_xpos = 0;
var ss_ypos = 0;
var ss_run_show = 1;

//initSlideshow();

function initSlideshow()
{
	for (i = 1; i <= ss_numimages; i++)
	{
		var element = ss_elembase+i.toString();
		if (document.getElementById(element))
		{
			document.getElementById(element).top = 0;
			document.getElementById(element).left = 0;
			document.getElementById(element).style.zIndex = 1-i;
		}
	}
	setTimeout("initScroll()", ss_delay);
}

function runSlideshow()
{
	if (ss_run_show)
	{
		ss_run_show = 0;
		document.getElementById("sscontrol").innerHTML = "Continue slideshow";
	}else
	{
		ss_run_show = 1;
		document.getElementById("sscontrol").innerHTML = "Stop slideshow";
		initScroll();
	}
}

function initScroll()
{
	if (!ss_run_show){return;}
	ss_oldelem = ss_curelem;
	ss_curelem++; if (ss_curelem > ss_numimages){ss_curelem = 1;}
	var element = ss_elembase+ss_curelem.toString();
	if (document.getElementById(element))
	{
		var rnum = Math.floor(Math.random()*4)+1;
		switch (rnum)
		{
			case 1: //scroll in from top
				ss_xdir = 0; ss_ydir = ss_velocity; ss_xpos = 0; ss_ypos = 0-ss_imgheight;
				break;
			case 2: //scroll in from right
				ss_xdir = 0-ss_velocity; ss_ydir = 0; ss_xpos = ss_imgwidth; ss_ypos = 0;
				break;
			case 3: //scroll in from bottom
				ss_xdir = 0; ss_ydir = 0-ss_velocity; ss_xpos = 0; ss_ypos = ss_imgheight;
				break;
			case 4: //scroll in from left
				ss_xdir = ss_velocity; ss_ydir = 0; ss_xpos = 0-ss_imgwidth; ss_ypos = 0;
				break;
		}
		document.getElementById(element).style.left = ss_xpos+"px"; 
		document.getElementById(element).style.top = ss_ypos+"px";
		rotateZOrders();
		doScroll();
	}
}

function doScroll()
{
	var element = ss_elembase+ss_curelem.toString();
	if (document.getElementById(element))
	{
		if (ss_xdir)
		{
			if (ss_xpos)
			{
				ss_xpos += ss_xdir;
				if (ss_xdir < 0 && ss_xpos < 0){ss_xpos = 0;}
				else{if (ss_xdir > 0 && ss_xpos > 0){ss_xpos = 0;}}
				document.getElementById(element).style.left = ss_xpos+"px";
				setTimeout("doScroll()", ss_speed);
			}else
			{
				ss_xdir = 0; ss_xpos = 0;
				document.getElementById(element).style.left = ss_xpos+"px";
				if (!ss_ypos){setTimeout("initScroll()", ss_delay);}
			}
		}
		if (ss_ydir)
		{
			if (ss_ypos)
			{
				ss_ypos += ss_ydir;
				if (ss_ydir < 0 && ss_ypos < 0){ss_ypos = 0;}
				else{if (ss_ydir > 0 && ss_ypos > 0){ss_ypos = 0;}}
				document.getElementById(element).style.top = ss_ypos+"px";
				setTimeout("doScroll()", ss_speed);
			}else
			{
				ss_ydir = 0; ss_ypos = 0;
				document.getElementById(element).style.top = ss_ypos+"px";
				if (!ss_xpos){setTimeout("initScroll()", ss_delay);}
			}
		}
	}
}

function rotateZOrders()
{
	var zpos = 3;
	for (i = 1; i < ss_numimages+1; i++)
	{
		element = ss_elembase+i.toString();
		if (document.getElementById(element))
		{
			document.getElementById(element).style.zIndex = zpos;
		}
	}
	zpos = 4;
	element = ss_elembase+ss_oldelem.toString();
	if (document.getElementById(element))
	{
		document.getElementById(element).style.zIndex = zpos;
	}
	zpos = 5;
	element = ss_elembase+ss_curelem.toString();
	if (document.getElementById(element))
	{
		document.getElementById(element).style.zIndex = zpos;
	}
}
