// -------------------------------------------------------------------------------------------------
// Simple script for news ticker - convert an unordered list full of links into a news ticker
// By Rich K
// -------------------------------------------------------------------------------------------------

var ticker = new Object;

ticker.p = new Object;

ticker.init = function()
{
	ticker.p.display = ticker.get_DOM_ref('ticker_display');
	ticker.p.data	 = ticker.get_DOM_ref('ticker_data');
	
	// Find <li> in ticker_data and start ticker
	ticker.p.items = ticker.p.data.getElementsByTagName('li');
	ticker.p.current = 0;
	ticker.diplay_item();
}

ticker.diplay_item = function()
{
	var item = ticker.p.items[ticker.p.current].getElementsByTagName('a')[0].cloneNode(1);
	var old  = ticker.p.display.getElementsByTagName('a');
	if (old.length) ticker.p.display.removeChild(old[0]);
	ticker.p.display.appendChild(item);
	ticker.p.opacity = 0;	
	ticker.display_item_fade_in();
	
	ticker.p.current++;
	if (ticker.p.current == ticker.p.items.length) ticker.p.current = 0;
	var t = setTimeout('ticker.diplay_item()', 7000);
}

ticker.display_item_fade_in = function()
{
	if (ticker.p.opacity > 1) ticker.p.opacity = 1;
	ticker.set_opacity(ticker.p.opacity)
	if (ticker.p.opacity < 1)
	{
		var t = setTimeout('ticker.display_item_fade_in()', 100);
	}
	ticker.p.opacity += 0.15;
}

ticker.set_opacity = function(fraction)
{
	ticker.p.display.style.filter = 'alpha(opacity=' + (fraction * 100) + ')';
	ticker.p.display.style.opacity = fraction;
}

ticker.get_DOM_ref = function(obj)
{
	// cross-browser function to get an object's DOM reference, given its id
	if (document.getElementById && document.getElementById(obj)) return document.getElementById(obj); // W3C DOM
	if (document.all && document.all(obj)) return document.all(obj); // MSIE 4/5/6
	return false;
}

// Attach event handlers 
if (window.addEventListener)
{
	window.addEventListener('load', ticker.init, false);  // W3C
}
else if (window.attachEvent)
{
	window.attachEvent('onload', ticker.init); // IE  - Quirks Mode
}
else
{
	document.onload = ticker.init; // IE5 Mac, and older browsers
}

