img_rotator.restartDelay = 500;
img_rotator.col = [];
function img_rotator (name, speed)
{
	this.name = name;
	this.speed = speed || 4500;
	this.ctr = 0;
	this.timer = 0;
	this.imgs = [];
	this.index = img_rotator.col.length;
	img_rotator.col[this.index] = this;
	this.animString = "img_rotator.col[" + this.index + "]";
}

img_rotator.prototype.addImages = function()
{
	var img;
	for (var i=0; arguments[i]; i++)
	{
		img = new Image();
		img.src = arguments[i];
		this.imgs[this.imgs.length] = img;
	}
}

img_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)
	{
		imgObj.src = this.imgs[this.ctr].src;
		this.timer = setTimeout(this.animString+".rotate()", this.speed);
	}
}

img_rotator.start = function()
{
	var len = img_rotator.col.length;
	var obj;
	
	for (var i=0; i<len; i++)
	{
		obj = img_rotator.col[i];
		if (obj && obj.name)
			obj.timer = setTimeout(obj.animString+".rotate()", obj.speed);
	}
}

img_rotator.pause = function(n)
{
	img_rotator.clearTimers(n);
}

img_rotator.clearTimers = function(n)
{
	var obj = img_rotator.col[n];
	if (obj)
	{
		clearTimeout(obj.timer);
		obj.timer = null;
	}
}

img_rotator.resume = function(n)
{
	img_rotator.clearTimers(n);
	var obj = img_rotator.col[n];
	if (obj)
	{
		obj.timer = setTimeout(obj.animString+".rotate()", img_rotator.restartDelay);
	}
}