/*************************************************************************
    This code is from Dynamic Web Coding at dyn-web.com
    Copyright 2001-5 by Sharon Paine 
    See Terms of Use at www.dyn-web.com/bus/terms.html
    regarding conditions under which you may use this code.
    This notice must be retained in the code as is!
*************************************************************************/

dw_Rotator.restartDelay = 500; // delay onmouseout before call to rotate
dw_Rotator.col=[];
function dw_Rotator(name,speed,path,tgt)
{
	this.name=name;
	this.speed=speed||4500;
	this.path=path||"";
	this.tgt=tgt;
	this.ctr=0;
	this.timer=0;
	this.imgs=[];
	this.actions=[];
	this.index=dw_Rotator.col.length;
	dw_Rotator.col[this.index]=this;
	this.animString="dw_Rotator.col["+this.index+"]";
};
dw_Rotator.prototype.addImages=function()
{
	var img;
	var randomize=[];
	
	for(var i=0;arguments[i];i++)
	{
		img=new Image();
		img.src=this.path+arguments[i];
		this.imgs[this.imgs.length]=img;
		randomize[this.imgs.length] = Math.floor((Math.random() * 10000));
	}
 	
	var exitflag = 0;
	while (exitflag == 0)
	{
		exitflag = 1;
		for (var i = 0;i < this.imgs.length -1; i++)
		{
			if (randomize[i] < randomize[i+1])
			{
				exitflag = 0;
				var temp = randomize[i + 1];
				randomize[i + 1] = randomize[i];
				randomize[i] = temp;
				var tempimg = this.imgs[i + 1];
				this.imgs[i + 1] = this.imgs[i];
				this.imgs[i] = tempimg;
			}
		}
	}
};

dw_Rotator.prototype.rotate=function()
{
	clearTimeout(this.timer);
	this.timer=null;
	if(this.ctr<this.imgs.length-1)
		this.ctr++;
	else 
		this.ctr=0;
	var imgObj=document.images[this.name];
	if(imgObj);//&&dw_Rotator.ready)
	{
		imgObj.src=this.imgs[this.ctr].src;
		this.timer=setTimeout(this.animString+".rotate()",this.speed);
	}
};
dw_Rotator.start=function()
{
	var len=dw_Rotator.col.length,obj;
	//var ran_number= Math.random()*len;
	for(var i=0;i<len;i++)
	{
	    //var picnum = (i + ran_number)%len;
	    var picnum = i;
		obj=dw_Rotator.col[picnum];
		if(obj&&obj.name)
			obj.timer=setTimeout(obj.animString+".rotate()",obj.speed);
	}
};
dw_Rotator.clearTimers=function(n)
{
	var obj=dw_Rotator.col[n];
	if(obj)
	{
		clearTimeout(obj.timer);
		obj.timer=null;
	}
};

