/* News Ticker
 * 
 */

addLoadEvent(ticker_start);
var newsStr;

function ticker_init(tickerStrings, noItems){
	//Set up the ticker string using data from array created by php at top of home page
	newsStr = '&nbsp;&nbsp;';
	for(var index=0; index < noItems; index++){
		newsStr += tickerStrings[index] + "&nbsp;&nbsp;";
	}
}

	function ticker_start(){
		var TickerStr = document.getElementById('TICKER');
		TickerStr.innerHTML = newsStr;	//Use strings obtained from php init
		TICKER_CONTENT = TickerStr.innerHTML;
		TICKER_STR_LN = TickerStr.offsetWidth;
//		alert(TICKER_STR_LN);
		TICKER_LEFTTORIGHT = true;	//Scroll left to right when true
		TICKER_SPEED = 2;
		TICKER_STYLE = "";	//font-family:Arial; font-size:12px; color:#444444
		TICKER_PAUSED = false;

		tickPos = 0;		//Current scroll position of news crawl text
		textWidth = 0;		//Holds width of crawl text after init.
		viewWidth = 0;		//Holds width of the crawl text view
//		alert("Ticker Starting");
		var tickerSupported = false;
		TICKER_WIDTH = document.getElementById("TICKER").style.width;
		var img = "<img src=Images/ticker_space.gif width="+TICKER_WIDTH+" height=0>";


		// Firefox
		if (navigator.userAgent.indexOf("Firefox")!=-1 || navigator.userAgent.indexOf("Safari")!=-1) {
			document.getElementById("TICKER").innerHTML = "<TABLE  cellspacing='0' cellpadding='0'><TR><TD nowrap='nowrap'>"+TICKER_CONTENT+"</TD></TR></TABLE>";
			viewWidth = document.getElementById("TICKER_FRAME").offsetWidth - 10;
			textWidth = document.getElementById("TICKER_FRAME").scrollWidth;
			document.getElementById("TICKER").style.left = viewWidth + "px";
			tickerSupported = true;
			TICKER_tick();
		}
		// IE
		if (navigator.userAgent.indexOf("MSIE")!=-1 && navigator.userAgent.indexOf("Opera")==-1) {
//			document.getElementById("TICKER").innerHTML = "<DIV nowrap='nowrap' style='width:100%;'>"+img+"<SPAN style='"+TICKER_STYLE+"' ID='TICKER_BODY' width='100%'></SPAN>"+img+"</DIV>";
			document.getElementById("TICKER").innerHTML = "<TABLE  cellspacing='0' cellpadding='0'><TR><TD nowrap='nowrap'>"+TICKER_CONTENT+"</TD></TR></TABLE>";
			viewWidth = document.getElementById("TICKER_FRAME").offsetWidth - 10;
			textWidth = document.getElementById("TICKER_FRAME").scrollWidth;
			document.getElementById("TICKER").style.left = viewWidth + "px";
			tickerSupported = true;
		}

		if(!tickerSupported)
			document.getElementById("TICKER").outerHTML = "";
		else{
			document.getElementById("TICKER").scrollLeft = TICKER_LEFTTORIGHT ? document.getElementById("TICKER").scrollWidth - document.getElementById("TICKER").offsetWidth : 0;
//			document.getElementById("TICKER_BODY").innerHTML = TICKER_CONTENT;
			document.getElementById("TICKER").style.display="block";
			TICKER_tick();
		}
	}

	function TICKER_tick() {
		if(!TICKER_PAUSED) tickPos += TICKER_SPEED;
		
//		if(TICKER_LEFTTORIGHT && document.getElementById("TICKER").scrollLeft <= 0) document.getElementById("TICKER").scrollLeft = document.getElementById("TICKER").scrollWidth - document.getElementById("TICKER").offsetWidth;
//		if(!TICKER_LEFTTORIGHT && document.getElementById("TICKER").scrollLeft >= document.getElementById("TICKER").scrollWidth - document.getElementById("TICKER").offsetWidth) document.getElementById("TICKER").scrollLeft = 0;
		
		//offsetWidth: the visible width of an element
		//scrollWidth: the entire width of an element
		//scrollLeft: the number of pixels to the left that an element has been scrolled
		//scrollWidth - offsetWidth = max. scrollLeft
		if(TICKER_LEFTTORIGHT){
//			if(tickPos >= (textWidth + viewWidth)){ 
			if(tickPos >= (TICKER_STR_LN + (viewWidth *2))){ 
				document.getElementById("TICKER").style.left = viewWidth + "px";
				tickPos = 0;
			}
			else
				document.getElementById("TICKER").style.left = (-tickPos + viewWidth) + "px";
		}
		
		//DEBUG
//		document.getElementById("TICK_POS").innerHTML = document.getElementById("TICKER").scrollWidth + " " + document.getElementById("TICKER").offsetWidth + " " + document.getElementById("TICKER_FRAME").scrollWidth + " " + document.getElementById("TICKER_FRAME").offsetWidth + " " + tickPos + " " + textWidth;
		
		window.setTimeout("TICKER_tick()", 100);
	}
