// JavaScript Image slideshow
// Original script by Patrick Fitzgerald, fitz@csicop.org
// Adapted for MerseyEvents by Ian Fleming

// Images --->

SLIDES = new slideshow("SLIDES")

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right01.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right02.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right03.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right04.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right05.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right06.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right07.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right08.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right09.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right10.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right11.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right12.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right13.jpg"
))

SLIDES.add_slide(new slide(
 "images/head_images_right/head_right14.jpg"
))

// Variables --->

function slide(image_url)
{
  this.image = new Image()
  this.image.src = image_url
}

function slideshow( slideshowname )
{
  this.name = slideshowname
  this.image
  this.timeout = 5000
  this.slides = new Array()
  this.current = 0
  this.timeoutid = 0
  this.add_slide = slideshow_add_slide
  this.set_image = slideshow_set_image
  this.play = slideshow_play
  this.pause = slideshow_pause
  this.update = slideshow_update
  this.next = slideshow_next
  this.previous = slideshow_previous
  this.loop = slideshow_loop
  this.valid_image = slideshow_valid_image
}

function slideshow_add_slide( slide )
{
  if (!document.images)
    return
  var i = this.slides.length;
  this.slides[i] = slide
}

function slideshow_set_image( imageobject )
{
  if (!document.images)
    return
  this.image = imageobject
}

function slideshow_valid_image()
{
  if (!this.image)
  {
    this.pause
    window.status = "Error: slideshow image not initialized for " + this.name
    return 0
  }
  else
    return 1
}

function slideshow_update()
{
  this.image.src = this.slides[ this.current ].image.src
}

function slideshow_next( )
{
  if (! this.valid_image()) return;
  if (this.current < this.slides.length - 1)
    this.current++
  else
    this.current = 0
  this.update();
}

function slideshow_previous( )
{
  if (! this.valid_image()) return;
  if (this.current > 0)
    this.current--
  else
    this.current = this.slides.length - 1
  this.update();
}

function slideshow_loop( )
{
  this.next( )
  this.play( )
}

function slideshow_play(timeout)
{
  this.pause();
  if (timeout) {
    this.timeout = timeout
  }
  this.timeoutid = setTimeout( this.name + ".loop()", this.timeout)
}

function slideshow_pause( )
{
  if (this.timeoutid != 0)
  {
    clearTimeout(this.timeoutid)
    this.timeoutid = 0
  }
}
