/* Contains JavaScript to operate the slide show
*/
var origLayerWidth = 400
var origLayerHeight = 350
var currTop, currRight, currBottom, currLeft
var curFrame, nextFrame

// the bigger these two numbers are, the faster the slide transition will go
var widthAmt = 2.28 //400px/350px 
var heightAmt = 2

var imgArray = new Array()
var i
var thisImage = 0
var swapIntervalID
var bNowPlaying = true
var bEvenImage = false

function startSlideshow() {
	if (document.images) {
		for (i=0; i<imgNameArray.length; i++) {
			imgArray[i] = new Image
			imgArray[i].src = imgNameArray[i]
		}
		swapIntervalID = setTimeout("showSlideshow()", 5000)
	}
}

function showSlideshow() {
	bNowPlaying = true
	swapImage()
	swapIntervalID = setTimeout("showSlideshow()", 5000)
}

function pauseSlideshow() {
	bNowPlaying = false
	clearTimeout(swapIntervalID)
}

function toggleSlideshow() {
	if (document.images) {
		var btn = MM_findObj("btnPlay")
		if (bNowPlaying) {
			pauseSlideshow()
			btn.src = "images/btnPlay.gif"
			btn.alt = "Play"
		} else {
			showSlideshow()
			btn.src = "images/btnPause.gif"
			btn.alt = "Pause"
		}
	}
}

function swapImage() {
	var curImage, nextImage
	// figure out who's who & what's what
	if (bEvenImage) {
		curFrame = getFrame("frame2")
		nextFrame = getFrame("frame1")
		curImage = MM_findObj("image2")
		nextImage = MM_findObj("image1")
	} else {
		curFrame = getFrame("frame1")
		nextFrame = getFrame("frame2")
		curImage = MM_findObj("image1")
		nextImage = MM_findObj("image2")
	}
	bEvenImage = ! bEvenImage
	
	// load image into frame behind
	thisImage++
	if (thisImage == imgArray.length) {
		thisImage = 0
	}
	nextImage.src = imgNameArray[thisImage]
	
	// set its clipping rectangle to nothing (top, right, bottom, left)
	nextFrame.clip = "rect(0px 0px " + origLayerHeight + "px 0px)"
	
	// move it to the front
	curFrame.zIndex = 0
	nextFrame.zIndex = 1
	
	// expose the image
	revealClip() // the one indicated by bEvenImage
}

function adjustClip() {
	nextFrame.clip = "rect(" + currTop + "px " +
	currRight + "px " + currBottom + "px " + currLeft + "px)"
}

// code to reveal the layer
var intervalID
function revealClip() {
	currTop = 0
	currBottom = origLayerHeight
	currRight = 0
	currLeft = 0
	intervalID = setInterval("expandClip()",1)
}
function expandClip() {
	var widthDone = false
	var heightDone = false
	if (currRight < origLayerWidth) {
		currRight += widthAmt
	} else {
		widthDone = true
	}
	if (currBottom < origLayerHeight) {
		currBottom += heightAmt
	} else {
		heightDone = true
	}
	adjustClip()
	if (widthDone && heightDone) {
		clearInterval(intervalID)
	}
}

function getFrame(obj) {
	var theObj
	if (document.layers) {
		if (typeof obj == "string") {
			// just one layer deep
			return document.layers[obj]
		} else {
			// can be a nested layer
			return obj
		}
	}
	if (document.all) {
		if (typeof obj == "string") {
			return document.all(obj).style
		} else {
			return obj.style
		}
	}
	if (document.getElementById) {
		if (typeof obj == "string") {
			return document.getElementById(obj).style
		} else {
			return obj.style
		}
	}
	return null
}

// Macromedia Dreamweaver built-in functions
function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_displayStatusMsg(msgStr) { //v1.0
  status=msgStr;
  document.MM_returnValue = true;
}

function displayPlayBtnStatusMsg() { //v1.0
  if (bNowPlaying) {
    status="Click to Pause the slide show";
  } else {
    status="Click to Play the slide show";
  }
  document.MM_returnValue = true;
}
