/*
 This script is writen by Michael Buckley.
 Home page: http://codefisher.org/webapps/slide_over
 
 Please don't remove this from this file.
 if you want to contact me please use my contact page
 http://codefisher.org/email 

 If you modify this script please give me credit for the original script.

 Linking back to me should you use this script is appreicated.
*/

var images = new Array();
var text = new Array();

/*  Change the array below to your own image and text */

images[0] = '/anne_geddes/slide_show/images/AG-0000.png';
text[0] = 'anne geddes photo 0';

images[1] = '/anne_geddes/slide_show/images/AG-0001.png';
text[1] = 'anne geddes photo 1';

images[2] = '/anne_geddes/slide_show/images/AG-0002.png';
text[2] = 'anne geddes photo 2';

images[3] = '/anne_geddes/slide_show/images/AG-0003.png';
text[3] = 'anne geddes photo 3';

images[4] = '/anne_geddes/slide_show/images/AG-0004.png';
text[4] = 'anne geddes photo 4';

images[5] = '/anne_geddes/slide_show/images/AG-0005.png';
text[5] = 'anne geddes photo 5';

images[6] = '/anne_geddes/slide_show/images/AG-0006.png';
text[6] = 'anne geddes photo 6';

images[7] = '/anne_geddes/slide_show/images/AG-0007.png';
text[7] = 'anne geddes photo 7';

images[8] = '/anne_geddes/slide_show/images/AG-0008.png';
text[8] = 'anne geddes photo 8';

images[9] = '/anne_geddes/slide_show/images/AG-0009.png';
text[9] = 'anne geddes photo 9';

images[10] = '/anne_geddes/slide_show/images/AG-0010.png';
text[10] = 'anne geddes photo 10';

images[11] = '/anne_geddes/slide_show/images/AG-0011.png';
text[11] = 'anne geddes photo 11';

images[12] = '/anne_geddes/slide_show/images/AG-0012.png';
text[12] = 'anne geddes photo 12';

images[13] = '/anne_geddes/slide_show/images/AG-0013.png';
text[13] = 'anne geddes photo 13';

images[14] = '/anne_geddes/slide_show/images/AG-0014.png';
text[14] = 'anne geddes photo 14';

images[15] = '/anne_geddes/slide_show/images/AG-0015.png';
text[15] = 'anne geddes photo 15';

images[16] = '/anne_geddes/slide_show/images/AG-0016.png';
text[16] = 'anne geddes photo 16';

images[17] = '/anne_geddes/slide_show/images/AG-0017.png';
text[17] = 'anne geddes photo 17';

images[18] = '/anne_geddes/slide_show/images/AG-0018.png';
text[18] = 'anne geddes photo 18';

images[19] = '/anne_geddes/slide_show/images/AG-0019.png';
text[19] = 'anne geddes photo 19';

images[20] = '/anne_geddes/slide_show/images/AG-0020.png';
text[20] = 'anne geddes photo 20';

images[21] = '/anne_geddes/slide_show/images/AG-0021.png';
text[21] = 'anne geddes photo 21';

images[22] = '/anne_geddes/slide_show/images/AG-0022.png';
text[22] = 'anne geddes photo 22';

images[23] = '/anne_geddes/slide_show/images/AG-0023.png';
text[23] = 'anne geddes photo 23';

images[24] = '/anne_geddes/slide_show/images/AG-0024.png';
text[24] = 'anne geddes photo 24';

images[25] = '/anne_geddes/slide_show/images/AG-0025.png';
text[25] = 'anne geddes photo 25';

images[26] = '/anne_geddes/slide_show/images/AG-0026.png';
text[26] = 'anne geddes photo 26';

images[27] = '/anne_geddes/slide_show/images/AG-0027.png';
text[27] = 'anne geddes photo 27';

images[28] = '/anne_geddes/slide_show/images/AG-0028.png';
text[28] = 'anne geddes photo 28';

images[29] = '/anne_geddes/slide_show/images/AG-0029.png';
text[29] = 'anne geddes photo 29';

images[30] = '/anne_geddes/slide_show/images/AG-0030.png';
text[30] = 'anne geddes photo 30';

images[31] = '/anne_geddes/slide_show/images/AG-0031.png';
text[31] = 'anne geddes photo 31';

images[32] = '/anne_geddes/slide_show/images/AG-0032.png';
text[32] = 'anne geddes photo 32';

images[33] = '/anne_geddes/slide_show/images/AG-0033.png';
text[33] = 'anne geddes photo 33';

images[34] = '/anne_geddes/slide_show/images/AG-0034.png';
text[34] = 'anne geddes photo 34';

images[35] = '/anne_geddes/slide_show/images/AG-0035.png';
text[35] = 'anne geddes photo 35';

images[36] = '/anne_geddes/slide_show/images/AG-0036.png';
text[36] = 'anne geddes photo 36';

images[37] = '/anne_geddes/slide_show/images/AG-0037.png';
text[37] = 'anne geddes photo 37';

images[38] = '/anne_geddes/slide_show/images/AG-0038.png';
text[38] = 'anne geddes photo 38';

images[39] = '/anne_geddes/slide_show/images/AG-0039.png';
text[39] = 'anne geddes photo 39';

images[40] = '/anne_geddes/slide_show/images/AG-0040.png';
text[40] = 'anne geddes photo 40';

images[41] = '/anne_geddes/slide_show/images/AG-0041.png';
text[41] = 'anne geddes photo 41';

images[42] = '/anne_geddes/slide_show/images/AG-0042.png';
text[42] = 'anne geddes photo 42';

images[43] = '/anne_geddes/slide_show/images/AG-0043.png';
text[43] = 'anne geddes photo 43';

images[44] = '/anne_geddes/slide_show/images/AG-0044.png';
text[44] = 'anne geddes photo 44';

images[45] = '/anne_geddes/slide_show/images/AG-0045.png';
text[45] = 'anne geddes photo 45';

images[46] = '/anne_geddes/slide_show/images/AG-0046.png';
text[46] = 'anne geddes photo 46';

images[47] = '/anne_geddes/slide_show/images/AG-0047.png';
text[47] = 'anne geddes photo 47';

images[48] = '/anne_geddes/slide_show/images/AG-0048.png';
text[48] = 'anne geddes photo 48';

images[49] = '/anne_geddes/slide_show/images/AG-0049.png';
text[49] = 'anne geddes photo 49';

images[50] = '/anne_geddes/slide_show/images/AG-0050.png';
text[50] = 'anne geddes photo 50';

images[51] = '/anne_geddes/slide_show/images/AG-0051.png';
text[51] = 'anne geddes photo 51';

images[52] = '/anne_geddes/slide_show/images/AG-0052.png';
text[52] = 'anne geddes photo 52';

images[53] = '/anne_geddes/slide_show/images/AG-0053.png';
text[53] = 'anne geddes photo 53';

images[54] = '/anne_geddes/slide_show/images/AG-0054.png';
text[54] = 'anne geddes photo 54';

images[55] = '/anne_geddes/slide_show/images/AG-0055.png';
text[55] = 'anne geddes photo 55';

images[56] = '/anne_geddes/slide_show/images/AG-0056.png';
text[56] = 'anne geddes photo 56';

images[57] = '/anne_geddes/slide_show/images/AG-0057.png';
text[57] = 'anne geddes photo 57';

images[58] = '/anne_geddes/slide_show/images/AG-0058.png';
text[58] = 'anne geddes photo 58';

images[59] = '/anne_geddes/slide_show/images/AG-0059.png';
text[59] = 'anne geddes photo 59';

images[60] = '/anne_geddes/slide_show/images/AG-0060.png';
text[60] = 'anne geddes photo 60';

images[61] = '/anne_geddes/slide_show/images/AG-0061.png';
text[61] = 'anne geddes photo 61';

images[62] = '/anne_geddes/slide_show/images/AG-0062.png';
text[62] = 'anne geddes photo 62';

images[63] = '/anne_geddes/slide_show/images/AG-0063.png';
text[63] = 'anne geddes photo 63';

images[64] = '/anne_geddes/slide_show/images/AG-0064.png';
text[64] = 'anne geddes photo 64';

images[65] = '/anne_geddes/slide_show/images/AG-0065.png';
text[65] = 'anne geddes photo 65';

images[66] = '/anne_geddes/slide_show/images/AG-0066.png';
text[66] = 'anne geddes photo 66';

images[67] = '/anne_geddes/slide_show/images/AG-0067.png';
text[67] = 'anne geddes photo 67';

images[68] = '/anne_geddes/slide_show/images/AG-0068.png';
text[68] = 'anne geddes photo 68';

images[69] = '/anne_geddes/slide_show/images/AG-0069.png';
text[69] = 'anne geddes photo 69';

images[70] = '/anne_geddes/slide_show/images/AG-0071.png';
text[70] = 'anne geddes photo 71';


/* don't edit the below unless you know what you are doing */

var slide_image;
var slide_box;
var pre_loaded = new Array();
var img_clone;
var current_image = 0;

var first_image_button;
var next_image_button;
var previous_image_button;
var last_image_button;

// start slider over
function init_slide_over() {
 slide_image = document.getElementById('slide-over');
 if(!slide_image.complete){
  setEventListener(slide_image,'load',init_slide_over,true);
  return;
 }
 pre_loaded[0] = true;
 slide_box = document.getElementById('slide-over-box');
 img_clone = document.createElement('img');
 img_clone.style.display = 'none';

 preload_image(1);
 preload_image(images.length-1);

 first_image_button = document.getElementById('slide-first');
 next_image_button = document.getElementById('slide-next');
 previous_image_button =  document.getElementById('slide-previous');
 last_image_button = document.getElementById('slide-last');

 setEventListener(first_image_button,'click',change_image,true);
 setEventListener(previous_image_button,'click',change_image,true);
 setEventListener(document.getElementById('slide-last'),'click',change_image,true);
 setEventListener(document.getElementById('slide-next'),'click',change_image,true);

 set_button_visability();
}

function preload_image(aNumber){
 if(images[aNumber]){
  var aImage = img_clone.cloneNode(true);
    aImage.src = images[aNumber];
  slide_box.appendChild(aImage);
  pre_loaded[aNumber] = true;
 }
}

function set_button_visability(){
 // make visiable then hide as needed.
 next_image_button.className = '';
 previous_image_button.className = '';

 if(images.length == 1){
  next_image_button.className = 'hidden';
  previous_image_button.className = 'hidden';
  return;
 }
 if(current_image == 0){
  previous_image_button.className = 'hidden';
 }
 if(current_image == images.length-1){
  next_image_button.className = 'hidden';
 }
}

function change_image(aEvent){
 var button = getButton(aEvent);
 switch(button){
  case first_image_button:
   current_image = 0;
  break;
  case next_image_button:
   current_image = current_image + 1;
   if(!pre_loaded[current_image + 1]) {
    preload_image(current_image + 1);
   }
  break;
  case previous_image_button:
   current_image = current_image - 1;
   if(!pre_loaded[current_image - 1]) {
    preload_image(current_image - 1);
   }
  break;
  case last_image_button:
   current_image = images.length - 1;
   if(!pre_loaded[current_image - 1]) {
    preload_image(current_image - 1);
   }
  break;
 }
 slide_image.src = images[current_image];
 if(text[current_image]){
  slide_image.alt = text[current_image];
 }
 set_button_visability();
}

function getButton(aEvent){
 if(aEvent.srcElement){
  var target = aEvent.srcElement;
 } else {
  var target = aEvent.target;
 }
 return target;
}

// corss browser event setter
function setEventListener(item,event,func,bool) {
 if(item.addEventListener){
	item.addEventListener(event,func,bool);
 } else {
	item.attachEvent('on'+event,func,bool);
 }
}

setEventListener(window,'load',init_slide_over,true);
