
/***********************************************
* Fading Scroller- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

var delay = 5000; //set delay between message change (in miliseconds)
var maxsteps=30; // number of steps to take to change from start color to endcolor
var stepdelay=40; // time in miliseconds of a single step
//**Note: maxsteps*stepdelay will be total time in miliseconds of fading effect

var startcolor= new Array(235,245,245); // start color (red, green, blue)
var endcolor=new Array(0,0,0); // end color (red, green, blue)

begintag='<div style="padding:3">'; //set opening tag, such as font declarations
closetag='</div>';

// The following initialisation is performed in the page code by extracting text from the database
// and putting the assignments in the HTML just before calling this file.

//var fcontent=new Array();
// Array of text messages
//fcontent[0]="<b>What\'s new?</b><br>New scripts added to the Scroller category!<br><br>The MoreZone has been updated. <a href='../morezone/index.htm'>Click here to visit</a>";
//fcontent[1]="Dynamic Drive has been featured on Jars as a top 5% resource, and About.com as a recommended DHTML destination.";
//fcontent[2]="Ok, enough with these pointless messages. You get the idea behind this script.</a>";

var fwidth='100%'; //set scroller width
var fheight='120px'; //set scroller height

var fadelinks=1;  //should links inside scroller content also fade like text? 0 for no, 1 for yes.

///No need to edit below this line/////////////////


var ie4=document.all&&!document.getElementById;
var DOM2=document.getElementById;
var faderdelay=0;

var msgeIndex=Math.floor(Math.random()*fcontent.length);



/*Rafael Raposo edited function*/
//function to change content
function changecontent()
{
	if (msgeIndex>=fcontent.length)
		msgeIndex=0
	if (DOM2)
	{
		document.getElementById("fscroller").style.color="rgb("+startcolor[0]+", "+startcolor[1]+", "+startcolor[2]+")"
		document.getElementById("fscroller").innerHTML=begintag+fcontent[msgeIndex]+closetag
		if (fadelinks)
			linkcolorchange(1);
		fadein = true;
		colorfade(0);
	}
	else if (ie4)
		document.all.fscroller.innerHTML=begintag+fcontent[msgeIndex]+closetag;
	msgeIndex++
}

function fadeOut()
{
	fadein = false;
	colorfade(maxsteps);
}

// colorfade() partially by Marcio Galli for Netscape Communications.  ////////////
// Modified by Dynamicdrive.com

function linkcolorchange(step)
{
	var obj=document.getElementById("fscroller").getElementsByTagName("A");
	if (obj.length>0)
	{
		for (i=0;i<obj.length;i++)
		{
			obj[i].style.color=getstepcolor(step);
		}
	}
}

/*Rafael Raposo edited function*/
var fadecounter;
var fadein = true;

function colorfade(step)
{
	if(fadein && step<=maxsteps) 
	{	
		document.getElementById("fscroller").style.color=getstepcolor(step);
		if (fadelinks)
			linkcolorchange(step);
		step++;
		fadecounter=setTimeout("colorfade("+step+")",stepdelay);
	}
	else if(fadein && step > maxsteps)
	{
		clearTimeout(fadecounter);
		document.getElementById("fscroller").style.color="rgb("+endcolor[0]+", "+endcolor[1]+", "+endcolor[2]+")";
		setTimeout("fadeOut()", delay);
	}
	else if(!fadein  && step> 0)
	{
		document.getElementById("fscroller").style.color=getstepcolor(step);
		if (fadelinks)
			linkcolorchange(step);
		step--;
		fadecounter=setTimeout("colorfade("+step+")",stepdelay);
	}
	else if(!fadein && step<=0)
	{
		clearTimeout(fadecounter);
		document.getElementById("fscroller").style.color="rgb("+startcolor[0]+", "+startcolor[1]+", "+startcolor[2]+")";
		setTimeout("changecontent()", 0);
	}
}

/*Rafael Raposo's new function*/
function getstepcolor(step)
{
	var diff
	var newcolor=new Array(3);
	for(var i=0;i<3;i++) 
	{
		diff = (startcolor[i]-endcolor[i]);
		if(diff > 0)
			newcolor[i] = startcolor[i]-(Math.round((diff/maxsteps))*step);
		else
			newcolor[i] = startcolor[i]+(Math.round((Math.abs(diff)/maxsteps))*step);
	}
	return ("rgb(" + newcolor[0] + ", " + newcolor[1] + ", " + newcolor[2] + ")");
}

if (ie4||DOM2)
  document.write('<table  style="border-width:5; border-style:ridge; border-color:#73BC64; background:#EBF5F5; width:'+fwidth+'"><tr><td id="fscroller" style="vertical-align:middle;height:'+fheight+'"></td></tr></table>');

//<div id="fscroller" style="border-width:5; border-style:ridge; border-color:#73BC64; background:#EBF5F5; width:'+fwidth+';height:'+fheight+'"></div>
if (window.addEventListener)
window.addEventListener("load", changecontent, false)
else if (window.attachEvent)
window.attachEvent("onload", changecontent)
else if (document.getElementById)
window.onload=changecontent
