﻿function addEventToObject(obj,evt,func) {
	var oldhandler = obj[evt];
	obj[evt] = (typeof obj[evt] != 'function') ? func : function(ev){oldhandler(ev);func(ev);};
}
var rssFetchAndDisplay = {
	iCurrentFeedsItem: 0,
	aNews: new Array(),
	iCurrentNewsItem: 0,
	tTM: null,
	iCycleCount: 2000,
	iFadeInCount: 0,
	iFadeOutCount: 0,
	Create: function()
		{
		var r = rssFetchAndDisplay;
		r.iCurrentNewsItem = 0;
		var aHrefs = document.getElementById('tic-item').getElementsByTagName('a');
		addEventToObject(aHrefs[0],'onmouseover',r.PauseTicker);
		addEventToObject(aHrefs[0],'onmouseout',r.RestartTicker);
		r.CycleTicker();
		},
	
	PauseTicker: function()
		{
		var r = rssFetchAndDisplay;
		if (r.tTM){clearTimeout(r.tTM)};
		var oFadeItem = document.getElementById('tic-item').getElementsByTagName('a')[0];
		oFadeItem.style.KHTMLOpacity = 0.999; // Safari<1.2, Konqueror
		oFadeItem.style.MozOpacity = 0.999; // Older Mozilla and Firefox
		oFadeItem.style.opacity = 0.999; // Safari 1.2, newer Firefox and Mozilla, CSS3
		//obj.style.zoom = 1; // bizarre ie fix
		//obj.style.filter = 'alpha(opacity:'+obj.fadeCount+')'; // IE/Win
		r.iFadeOutCount = 0;
		},
	RestartTicker: function()
		{
		var r = rssFetchAndDisplay;
		r.iCycleCount = 2000;
		r.CycleTicker();
		},
	CycleTicker: function()
		{
		var r = rssFetchAndDisplay;		
      if (r.tTM){clearTimeout(r.tTM);}
		if (r.iCycleCount < 0)
			{
			r.iCycleCount = 2000;
			r.FadeOut();
			}
		else
			{
			r.iCycleCount -= 100;
			//var iDelay = (r.iCurrentNewsItem == 0) ? 0 : 100;
			r.tTM = setTimeout(function(){r.CycleTicker()},100); 		  
			}
		},
	FadeOut: function()
		{
		var r = rssFetchAndDisplay;
		if (r.tTM){clearTimeout(r.tTM)};                         
		if (r.iFadeOutCount < 0)
			{
			r.iCurrentNewsItem = (r.iCurrentNewsItem < r.aNews.length-1) ? r.iCurrentNewsItem + 1 : 0;
			var oActiveItem = document.getElementById('tic-item');
			oActiveItem.innerHTML = '<a href="'+r.aNews[r.iCurrentNewsItem].url+'" class="colora1a5a9Link"><span class="cn9size">'+r.aNews[r.iCurrentNewsItem].title+'</span></a>';
			var aHrefs = document.getElementById('tic-item').getElementsByTagName('a');
			addEventToObject(aHrefs[0],'onmouseover',r.PauseTicker);
			addEventToObject(aHrefs[0],'onmouseout',r.RestartTicker);
			r.iFadeOutCount = 0;
			r.CycleTicker();
			}
		else
			{
			r.iFadeOutCount -= 10;
			if (r.iFadeOutCount <= 100)
				{
				var oFadeItem = document.getElementById('tic-item').getElementsByTagName('a')[0];
				var opac = ((r.iFadeOutCount/100) > 0.999) ? 0.999 : (r.iFadeOutCount/100);
				oFadeItem.style.KHTMLOpacity = opac; // Safari<1.2, Konqueror
				oFadeItem.style.MozOpacity = opac; // Older Mozilla and Firefox
				oFadeItem.style.opacity = opac; // Safari 1.2, newer Firefox and Mozilla, CSS3
				//obj.style.zoom = 1; // bizarre ie fix
				//obj.style.filter = 'alpha(opacity:'+obj.fadeCount+')'; // IE/Win
				}
			r.tTM = setTimeout(function(){r.FadeOut()},50);   
			}
		}
	}
