// JavaScript Document

// Image fader object
// ©2007 Darren Crabb
// DG Newmedia Ltd
// For use with Content Mechanic CMS System


function imagedefinition() 
{
	this.imagealt = "";
	this.imagesrc = "";
	this.setImageDetails = function (imageinput , altinput) 
							{
								this.imagealt = altinput;
								this.imagesrc = imageinput;
								this.createImage();
							}
	this.createImage = function ()
							{
								this.preImage = new Image();
								this.preImage.src = this.imagesrc;
								this.preImage.alt = this.imagealt;
							}
	this.getImageObj = function () 
							{
								//alert(this.preImage);
								return this.preImage;
							}
							
}		

								

function imagefader(myId) 
{
	this.myId = myId;
	this.imagearray = Array();
	this.target = "";
	this.currentimage = 0;
	this.duration = 5000;
	
	this.setTarget = function (targetObjId) 
						{
										 this.target = document.getElementById(targetObjId);
						}
						
	this.addImage = function (imagesrc,imagealt)
						{
							var myimage = new imagedefinition();
							myimage.setImageDetails(imagesrc,imagealt);
							this.imagearray.push(myimage);
						}
	this.startShow = function ()
						{
							//first set the starting images
							this.currentimage = 0;
							//alert(this.imagearray.length);
							if (this.imagearray.length > 0) 
							{
								this.mycurimage = this.imagearray[this.currentimage].getImageObj();
								//alert(this.mycurimage);
								if (this.target.filters) {
									this.target.filters.blendTrans.apply();
									this.target.alt = this.mycurimage.alt;
									this.target.src = this.mycurimage.src;
									this.target.filters.blendTrans.play();
								} else {
									// browser doesn't support filters so just switch the image
									this.target.alt = this.mycurimage.alt;
									this.target.src = this.mycurimage.src;
								}
							}

							this.intervalId = setInterval(  "triggerNextSlide("+this.myId+")" , this.duration); 
						}
	this.nextSlide = function ()
						{
							//first set the starting images
							this.currentimage += 1;
							if (this.currentimage >= this.imagearray.length) 
							{
								this.currentimage = 0;
							}
							if (this.imagearray.length > 0) 
							{
								this.mycurimage = this.imagearray[this.currentimage].getImageObj();
								if (this.target.filters) {
									this.target.filters.blendTrans.apply();
									this.target.alt = this.mycurimage.alt;
									this.target.src = this.mycurimage.src;
									this.target.filters.blendTrans.play();
								} else {
									// browser doesn't support filters so just switch the image
									this.target.alt = this.mycurimage.alt;
									this.target.src = this.mycurimage.src;
								}
							}
							
							
						}
							/*
							
							eval("myimage"+i+" = document.getElementById(myid)") 
							eval("myimage"+i+".alt = image"+i+"_" + step + ".alt")
							eval("myimage"+i+".filters.blendTrans.apply()")
							eval("myimage"+i+".src = image"+i+"_" + step + ".src")
							eval("myimage"+i+".filters.blendTrans.play()")
							
							this.imagearray.length;
							
							*/	
}

function triggerNextSlide(myFaderObj) {
	fader = eval(myFaderObj);
	fader.nextSlide();
}