window.onload = fetch_rss_ticker_items;
var rss_ticker_now;
var rss_ticker_max_length=80;
var rss_ticker_div_id="rss-ticker_center";

function show_rss_ticker()
	{
	document.getElementById("rss-ticker").style.visibility="visible";
	}

function fetch_rss_ticker_items()
	{
	var div;
	var img;
	var connection = null;
	
	div = document.getElementById(rss_ticker_div_id);
	img = document.createElement("img");
	img.setAttribute("src","images/ajax-loader.gif");
	img.setAttribute("border","0");
	div.appendChild(img);
	
	if(window.XMLHttpRequest)
		{
		connection = new XMLHttpRequest();
		}
		else if(window.ActiveXObject)
		{
		connection = new ActiveXObject("Microsoft.XMLHTTP");
		}
	if(connection != null)
		{
		connection.open("GET","rss-ticker/rss-ticker.inc.php",true);
		connection.onreadystatechange = show;
		connection.send(null);
		}
	function show()
		{
		if(connection.readyState == 4)
			{
			div.removeChild(img);
			rss_ticker_items = connection.responseText;
			rss_ticker_items = eval(rss_ticker_items);
			rss_ticker_current=0;
			blend_in_rss_ticker();
			}
		}
	}

function blend_in_rss_ticker()
	{
	rss_ticker_div = document.getElementById(rss_ticker_div_id);
	if(typeof rss_ticker_a != "undefined")
		{
		rss_ticker_div.removeChild(rss_ticker_a);
		}
	
	rss_ticker_a = document.createElement("a");
	rss_ticker_a.setAttribute("href",rss_ticker_items[rss_ticker_current][1]);
	rss_ticker_a.setAttribute("target","_blank");
	rss_ticker_a.onmouseover = function() { pause_interval(); }
	rss_ticker_a.onmouseout = function() { continue_interval(); }
		
	if(rss_ticker_items[rss_ticker_current][0].length>rss_ticker_max_length && rss_ticker_max_length!=0)
		{
		rss_ticker_items[rss_ticker_current][0] = rss_ticker_items[rss_ticker_current][0].substring(0,rss_ticker_max_length);
		rss_ticker_items[rss_ticker_current][0] = rss_ticker_items[rss_ticker_current][0].substring(0,rss_ticker_items[rss_ticker_current][0].lastIndexOf(" "));
		rss_ticker_items[rss_ticker_current][0] += " (...)";
		}
	
	rss_ticker_txt = rss_ticker_items[rss_ticker_current][0];
	rss_ticker_txt = rss_ticker_txt.replace(/\n/g, "");
	rss_ticker_txt = document.createTextNode(rss_ticker_txt);
	rss_ticker_a.appendChild(rss_ticker_txt);
	rss_ticker_div.appendChild(rss_ticker_a);
	changeOpac(0,rss_ticker_div_id);
	opacity(rss_ticker_div_id, 0, 100, 1000);

	timeouttime = new Date();
	timeouttime = timeouttime.getTime();
	rss_ticker_timeout = new Array(timeouttime,"blend_out_rss_ticker()",5500);
	rss_ticker_timeout[3]=setTimeout("blend_out_rss_ticker()", 5500);
	}

function blend_out_rss_ticker()
	{
	var timeouttime;
	
	opacity(rss_ticker_div_id, 100, 0, 1000);
	
	if(rss_ticker_current < rss_ticker_items.length-1)
		{
		rss_ticker_current++;
		}
		else
		{
		rss_ticker_current=0;
		}
	
	timeouttime = new Date();
	timeouttime = timeouttime.getTime();
	rss_ticker_timeout = new Array(timeouttime,"blend_in_rss_ticker()",1000);
	rss_ticker_timeout[3]=setTimeout("blend_in_rss_ticker()", 1000);
	}
	
function pause_interval()
	{
	clearTimeout(rss_ticker_timeout[3]);
	rss_ticker_now = new Date();
	rss_ticker_now = rss_ticker_now.getTime();
	}
	
function continue_interval()
	{
	var time_left_difference;
	var time_left;
	var now_new;
	
	time_left_difference = rss_ticker_now-rss_ticker_timeout[0];
	time_left = rss_ticker_timeout[2]-time_left_difference;
	
	rss_ticker_timeout[3]=setTimeout(rss_ticker_timeout[1],time_left);
	
	now_new = new Date();
	now_new = now_new.getTime();
	rss_ticker_timeout[0]=now_new-time_left_difference;
	}
