// GifAnim Object
// Copyright 1998 Dan Steinman
// Available at the Dynamic Duo (http://www.dansteinman.com/dynduo/)
// April 9, 1998.
// In order to use this code you must keep this disclaimer

function GifAnim(layer,imgName,imgSeries,end,speed,startFrame) {
	this.layer = layer
	this.imgName = imgName
	this.frame = new Array()
	for (var i=0; i<=end; i++) this.frame[i] = imgSeries+i
	this.end = end
	this.speed = speed
	this.active = false
	this.count = (startFrame)? startFrame : 0
	this.obj = imgName + "GifAnim"
	eval(this.obj + "=this")
	this.play = GifAnimPlay
	this.run = GifAnimRun
	this.pause = GifAnimPause
	this.stepf = GifAnimStepf
	this.stepb = GifAnimStepb
	this.stop = GifAnimStop
	this.goToFrame = GifAnimGoToFrame
}
function GifAnimPlay(loop,reset,fn) {
	if (!this.active) {
		this.active = true
		if (!loop) loop = false
		if (!reset) reset = false
		if (!fn) fn = null
		this.run(loop,reset,fn)
	}
}
function GifAnimRun(loop,reset,fn) {
	if (this.active && this.count <= this.end) {
		changeImage(this.layer,this.imgName,this.frame[this.count])
		this.count += 1
		setTimeout(this.obj+".run("+loop+","+reset+",\""+fn+"\")",this.speed)
		document.getElementById("dl").selectedIndex = this.count
		slider.setValue(this.count)
                document.getElementById("a1").innerHTML = "Time = " + (this.count) + " hrs";
		document.getElementById("dl2").selectedIndex = this.count
		slider2.setValue(this.count)
                document.getElementById("a2").innerHTML = "Time = " + (this.count) + " hrs";
		document.getElementById("dl3").selectedIndex = this.count
		slider3.setValue(this.count)
                document.getElementById("a3").innerHTML = "Time = " + (this.count*3) + " hrs";
		document.getElementById("dl4").selectedIndex = this.count
		slider4.setValue(this.count)
                document.getElementById("a4").innerHTML = "Time = " + (this.count*3) + " hrs";                
	}
	else {
		if (loop && this.active) {
			this.count = 0
			this.run(loop,reset,fn)
		}
		else {
			this.active = false
			if (reset) this.goToFrame(0)
			eval(fn)
		}
	}
}

function GifAnimPause() {
	this.active = false
}

function GifAnimStepf() {
	this.active = false
	this.count = Math.min((this.count + 1),this.end)
	this.goToFrame(this.count)
	document.getElementById("dl").selectedIndex = this.count
	slider.setValue(this.count)
        document.getElementById("a1").innerHTML = "Time = " + (this.count) + " hrs";
	document.getElementById("dl2").selectedIndex = this.count
	slider2.setValue(this.count)
        document.getElementById("a2").innerHTML = "Time = " + (this.count) + " hrs";
	document.getElementById("dl3").selectedIndex = this.count
	slider3.setValue(this.count)
        document.getElementById("a3").innerHTML = "Time = " + (this.count*3) + " hrs";
	document.getElementById("dl4").selectedIndex = this.count
	slider4.setValue(this.count)
        document.getElementById("a4").innerHTML = "Time = " + (this.count*3) + " hrs";  	
}

function GifAnimStepb() {
	this.active = false
	this.count = Math.max((this.count - 1),0)
	this.goToFrame(this.count)
	document.getElementById("dl").selectedIndex = this.count
	slider.setValue(this.count)
        document.getElementById("a1").innerHTML = "Time = " + (this.count) + " hrs";
	document.getElementById("dl2").selectedIndex = this.count
	slider2.setValue(this.count)
        document.getElementById("a2").innerHTML = "Time = " + (this.count) + " hrs";
	document.getElementById("dl3").selectedIndex = this.count
	slider3.setValue(this.count)
        document.getElementById("a3").innerHTML = "Time = " + (this.count*3) + " hrs";
	document.getElementById("dl4").selectedIndex = this.count
	slider4.setValue(this.count)
        document.getElementById("a4").innerHTML = "Time = " + (this.count*3) + " hrs";  	
}

function GifAnimStop() {
	this.active = false
        this.count = 0
        slider.setValue(this.count)
        slider2.setValue(this.count)
        slider3.setValue(this.count)
        slider4.setValue(this.count)        
        document.getElementById("a1").innerHTML = "Time = " + this.count + " hrs"
        document.getElementById("a2").innerHTML = "Time = " + this.count + " hrs"
        document.getElementById("a3").innerHTML = "Time = " + this.count + " hrs"
        document.getElementById("a4").innerHTML = "Time = " + this.count + " hrs"        
        document.getElementById("dl").selectedIndex = this.count
        document.getElementById("dl2").selectedIndex = this.count
        document.getElementById("dl3").selectedIndex = this.count
        document.getElementById("dl4").selectedIndex = this.count
        javascript:numImgAnim.goToFrame(0)
        javascript:numImgAnim2.goToFrame(0)
        javascript:numImgAnim3.goToFrame(0)
        javascript:numImgAnim4.goToFrame(0)
}

function GifAnimGoToFrame(index) {
	this.count = index
	changeImage(this.layer,this.imgName,this.frame[this.count])
}

// changeImage() function is required
function changeImage(layer,imgName,imgObj) {
	if (ns4 && layer!=null) eval('document.'+layer+'.document.images["'+imgName+'"].src = '+imgObj+'.src');
	else document.images[imgName].src = eval(imgObj+".src");
}