function CDIScroller2(id)
{
	this.div = getID(id);
	this.id = id;
	this.tlen = 20;
	this.speed = 100;
	this.delay = 3000;
	this.init = cdisc2_init;
	self["_cdisc2_"+id] = this;
}
function cdisc2_init(texts)
{
//	if (navigator.appVersion.indexOf("MSIE 4")>0) return; //IE4 is buggy
	
	this.texts = texts; this.i = 0;
	
	// start inner size measurment
	this.div.innerHTML = '<div id="'+this.id+
		'2" style="height:100%;width=100%">Initializing</div>';
	setTimeout("cdisc2_init2('"+this.id+"')",900);
}
function cdisc2_init_edges(o,rev)
{
	var i; var k = 1/(rev ? -o.tlen : o.tlen);
	for (i=0;i<4;i++) {
		var b = (o.code >> i) & 1;
		o.pos[i] = ((o.code>>(i&2))&3)==3 ? o.maxs[(i&2)|1]/2 : o.maxs[i^b];
		o.diff[i] = (o.maxs[i]-o.pos[i])*k;
		if (rev) o.pos[i] = o.maxs[i];
	}
	if (++o.code > 15) o.code = 1;
}
function cdisc2_init2(id)
{
	var o = self["_cdisc2_"+id];
	var el = getID(id+'2');
	o.maxs = [ 0,el.offsetWidth,0,el.offsetHeight ];
	o.pos = new Array();
	o.diff = new Array();
	o.txi = 0; o.code = 1;
		
	o.div.innerHTML = '<div style="position:absolute;overflow:hidden;xborder:1px solid red;width:'+o.maxs[1]+'px;height:'+o.maxs[3]+'px" id="'+o.id+'2" onmouseover="this.stop=true" onmouseout="this.stop=false"></div>';
	o.n = 0;
	o.ih = setInterval("cdisc2_animate('"+o.id+"')",o.speed);
}
function cdisc2_mkrect(o)
{
	var s = 'rect('; var i; var map = [2,1,3,0];
	for (i=0;i<4;i++) {
		var m = map[i];
		s += (i?" ":"")+Math.floor(o.pos[m])+"px";
		o.pos[m] += o.diff[m];
	}
	return s+')';
}
function cdisc2_next(id)
{
	var o = self["_cdisc2_"+id];
	var el = getID(id+'2');
	cdisc2_init_edges(o,1); 
	o.n = o.tlen;
	if (el.stop == true)
		 setTimeout("cdisc2_next('"+id+"')",o.delay);
		 else
		 o.ih = setInterval("cdisc2_animate('"+o.id+"')",100);
}
function cdisc2_animate(id)
{
	var o = self["_cdisc2_"+id];
	var el = getID(id+'2');
	if (!o.n) {
		cdisc2_init_edges(o,0);
		el.innerHTML = o.texts[o.txi]+'<p></p>';
		if (++o.txi >= o.texts.length) o.txi = 0;
	}
	el.style.clip = cdisc2_mkrect(o);
	el.style.color = 'rgb(0,0,'+o.n+')'; // force Mozilla to redraw
	if (o.n-- < -o.tlen) {
		 clearInterval(o.ih);
		 setTimeout("cdisc2_next('"+id+"')",o.delay);
	}
}

