// JavaScript for loading and displaying rotating photos
// 2 images are selected at random and pre-loaded
// as each image displays a new random image is loaded into a buffer to be displayed next


// Variables
var rotation_seconds = 4;
var photos = 153;
var photo_num1 = 0;
var photo_num2 = 0;
var photo_src1 = "";
var photo_src2 = "";
var photo_data1;
var photo_data2;

// Calculate a random number between 1 and the total number of photos for photo 1
photo_num1 = Math.floor(Math.random() * photos) + 1;
photo_num2 = Math.floor(Math.random() * photos) + 1;

// Reselect photo 2 whilst it is the same as photo 1
while(photo_num1 == photo_num2)
{
	photo_num2 = Math.floor(Math.random() * photos) + 1;
}
	

// Store photo 1 in memory
photo_data1 = new Image;

if((photo_num1) < 10)
{
	photo_data1.src = '/images/header-photos/header-photo00' + photo_num1 + '.jpg';
}
else
{
	if((photo_num1) < 100)
		photo_data1.src = '/images/header-photos/header-photo0' + photo_num1 + '.jpg';
	else
		photo_data1.src = '/images/header-photos/header-photo'  + photo_num1 + '.jpg';
}


// Store photo 2 in memory
photo_data2 = new Image;

if((photo_num2) < 10)
{
	photo_data2.src = '/images/header-photos/header-photo00' + photo_num2 + '.jpg';
}
else
{
	if((photo_num2) < 100)
		photo_data2.src = '/images/header-photos/header-photo0' + photo_num2 + '.jpg';
	else
		photo_data2.src = '/images/header-photos/header-photo'  + photo_num2 + '.jpg';
}


// Function to display loaded images
function show_images()
{
  // Display photo stored in photo data 1 memory
  document.getElementById("Photo").src = photo_data1.src;
	
	// Replace photo 1 with photo 2
	photo_data1.src = photo_data2.src;

	// Calculate a random number between 1 and the total number of photos for new photo2
	photo_num2 = Math.floor(Math.random() * photos) + 1;
	
	// Keep selecting at random until different from photo 1
	while(photo_num2 == photo_num1)
	{
		photo_num2 = Math.floor(Math.random() * photos) + 1;
	}
		
	// Load new photo 2 into memory
	if((photo_num2) < 10)
	{
		photo_data2.src = '/images/header-photos/header-photo00' + photo_num2 + '.jpg';
	}
	else
	{
		if((photo_num2) < 100)
			photo_data2.src = '/images/header-photos/header-photo0' + photo_num2 + '.jpg';
		else
			photo_data2.src = '/images/header-photos/header-photo'  + photo_num2 + '.jpg';
	}

	// Function recalls itself again in 3 seconds
  setTimeout("show_images()",rotation_seconds * 1000);  
}
