// fade-out text effect with rotation 

var texts = new Array(
"<font color='{col}' >OSHA unveils its top 10 most cited violations... | <a href='http://www.lawlessgroup.com/news/index.php#OSHA-top10' class='tickertext'>more</a></font>",
"<font color='{col}' >Tough WINTER GEAR keeps workers on the job... | <a href='http://www.lawlessgroup.com/wintergear.html' class='tickertext'>more</a></font>",
"<font color='{col}' >Free Fall Protection <img src='../graphics/adobe_pdf.gif' align='absmiddle'> <a href='../downloads/FallProtectionFactsPoster.pdf' class='tickertext'>poster</a> available for download.</font>",
"<font color='{col}' >Recognizing one of our own: an outstanding Marine... | <a href='http://www.lawlessgroup.com/newsletters/Brooks-Grado.html' class='tickertext'>more</a></font>"
);

var bgcolor = "#938E7E";
var fcolor = "#FFFFFF";
var steps = 20; // smoothness
var show = 7000; // timing
var sleep = 130;
var loop = true;

var colors = new Array(steps);
getFadeColors(bgcolor,fcolor,colors);
var color = 0;
var text = Math.round(Math.random()*(texts.length-1))
var step = 1;

function fade() {

	var text_out = texts[text].replace("{col}", colors[color]);
	
	if (document.all) newsticker.innerHTML = text_out;
	if (document.layers) { document.newsticker.document.write(text_out); 
		document.newsticker.document.close(); }
	if(!document.all && document.getElementById){
		document.getElementById("newsticker").innerHTML = text_out;
			}


color += step;

if (color >= colors.length-1) {
step = -1;

if (!loop && text >= texts.length-1) return;
}

if (color == 0) {
step = 1;

text += 1;
if (text == texts.length) text = 0;
}

setTimeout("fade()", (color == colors.length-2 && step == -1) ? show : ((color == 1 && step == 1) ? sleep : 50)); 
}

function getFadeColors(ColorA, ColorB, Colors) {
len = Colors.length;

if (ColorA.charAt(0)=='#') ColorA = ColorA.substring(1);
if (ColorB.charAt(0)=='#') ColorB = ColorB.substring(1);

var r = HexToInt(ColorA.substring(0,2));
var g = HexToInt(ColorA.substring(2,4));
var b = HexToInt(ColorA.substring(4,6));
var r2 = HexToInt(ColorB.substring(0,2));
var g2 = HexToInt(ColorB.substring(2,4));
var b2 = HexToInt(ColorB.substring(4,6));

var rStep = Math.round((r2 - r) / len);
var gStep = Math.round((g2 - g) / len);
var bStep = Math.round((b2 - b) / len);

for (i = 0; i < len-1; i++) {
Colors[i] = "#" + IntToHex(r) + IntToHex(g) + IntToHex(b);
r += rStep;
g += gStep;
b += bStep;
}
Colors[len-1] = ColorB;
}

function IntToHex(n) {
var result = n.toString(16);
if (result.length==1) result = "0"+result;
return result;
}

function HexToInt(hex) {
return parseInt(hex, 16);
}
