//Utility functions
function onPageDOMLoad() {
	activateRollovers();
	activateTicker();
}
function setOpacity(el, o) {
	if (isNaN(o)) return;
	if (window.ActiveXObject) 
		el.style.filter = "progid:DXImageTransform.Microsoft.Alpha(opacity="
		            + Math.round(o) + ")";
	else 
		el.style.opacity = o / 100;
}

//Rollover functions
function rollOn(what) {
	var el = document.getElementById(what.id.replace('roll', 'over'));
	if (el) el.style.visibility='visible';
}
function rollOff(what) {
	var el = document.getElementById(what.id.replace('roll', 'over'));
	if (el) el.style.visibility='hidden';
}
function activateRollovers() {
	var s = '';
	for (i = 0; i < document.images.length; i++) {
		var im = document.images[i];
		if (im.className != "rollover") continue;
		im.onmouseover = function () {
			rollOn(this);
			};
		im.onmouseout = function () {
			rollOff(this);
		}
		var el = im.id.replace('roll', 'over');
		s += "<div id='" + el + "' class='imgoverlay'>"
			+ "<img src='/247images/overlays/" + el + ".gif' />"
			+ "</div>";
	}
	document.getElementById('overlaycontainer').innerHTML = s;
}

//Ticker functions
var tickerInterval = 10;			//Seconds between tickerchanges
var tickerNews = new Array();
var tickerIndex = 0;
var tickerFadeStep = 5;
function activateTicker() {
	var an = document.getElementById('announce');
	if (!an) return;
	var el = an.firstChild;
	while (el) {
		if (el.tagName && el.tagName.toLowerCase() == 'div') {
			tickerNews[tickerNews.length] = el;
		}
		el = el.nextSibling;
	}
	tickerFadeUp(0);
}
function tickerFadeUp(num) {
	var el = tickerNews[tickerIndex];
	if (!el) return;
	el.style.display = 'block';
	num += tickerFadeStep;
	setOpacity(el, num);
	if (num < 100) 
		setTimeout("tickerFadeUp(" + num + ")", 50);
	else 
		setTimeout("tickerFadeDown(100)", tickerInterval * 1000);
}
function tickerFadeDown(num) {
	var el = tickerNews[tickerIndex];
	if (!el) return;
	num -= tickerFadeStep;
	setOpacity(el, num);
	if (num > 0) 
		setTimeout("tickerFadeDown(" + num + ")", 50);
	else 
		tickerRotate();
}
function tickerRotate() {
	var el = tickerNews[tickerIndex];
	if (!el) return;
	el.style.display = 'none';
	tickerIndex = (tickerIndex + 1) % tickerNews.length;
	el = tickerNews[tickerIndex];
	if (!el) return;
	tickerFadeUp(0);
}