function objTicker(name, id, shiftBy, interval)
{
	this.name     = name;
	this.id       = id;
	this.shiftBy  = shiftBy ? shiftBy : 1;
	this.interval = interval ? interval : 100;
	this.runId	  = null;
	
	this.div = document.getElementById(id);
	this.divcont = document.getElementById('container');
	
	var node = this.div.firstChild;
	var next;
	
	while (node)
	{
		next = node.nextSibling;
		if (node.nodeType == 3)
		  this.div.removeChild(node);
		node = next;
	}
	
	this.left = 0;
	this.shiftLeftAt = this.div.firstChild.offsetWidth;
	this.div.style.height	= this.div.firstChild.offsetHeight;
	this.div.style.width = 2 * screen.availWidth;
	this.div.style.visibility = 'visible';
	
	this.start = objTicker_startTicker;
	this.stop = objTicker_stopTicker;
	this.changeInterval = objTicker_changeTickerInterval;
};

function objTicker_startTicker()
{
	this.stop();
	this.left -= this.shiftBy;
	if (this.left <= -this.shiftLeftAt)
	{
		this.left = 0;
		this.div.appendChild(this.div.firstChild);
		this.shiftLeftAt = this.div.firstChild.offsetWidth;
	}
	this.div.style.left = (this.left + 'px');
	this.runId = setTimeout(this.name + '.start()', this.interval);
};

function objTicker_stopTicker()
{
	if (this.runId)
		clearTimeout(this.runId);
	this.runId = null;
};

function objTicker_changeTickerInterval(newinterval)
{
  if (typeof(newinterval) == 'string')
	newinterval =  parseInt('0' + newinterval, 10); 
	
  if (typeof(newinterval) == 'number' && newinterval > 0)
	this.interval = newinterval;
	
	this.stop();
	this.start();
};

var ticker = null;
function tickerInit()
{
	ticker = new objTicker('ticker', 'tickerID', 1, 22);
	ticker.start();
}

