/* Requires Yahoo User Interface Library (Animation) */
window.onload = function() {
	
	var itemPans = new Array();
	var amountMoved = 0;
	var textItems = new Array();
	var currentItem = 0;
	
	//set up the news ticker
	newsTicker = document.getElementById('news_ticker');
	mask = document.getElementById('ticker_mask');
	//mask.style.height = (mask.parentNode.offsetHeight - 20) + 'px';
	//newsTicker.style.height = (mask.parentNode.offsetHeight - 20) + 'px';
	var itemWidth = (532 - (document.getElementById('announcements_title').offsetWidth));
	mask.style.width = (itemWidth) + 'px';
	var movementLimit = ((itemWidth + 30) * 3);

	//set up each item
	tickerItems = newsTicker.getElementsByTagName('li');
	for (var i=0;i<tickerItems.length;i++) {
		var tickerText = tickerItems[i].getElementsByTagName('p');
		tickerText[0].id = "ticker_item_" + i;
		var amountToPan = -(tickerText[0].offsetWidth - (itemWidth - 15)); 
		if (amountToPan > 0) amountToPan = 0;
		var panAnimation = new YAHOO.util.Anim(tickerText[0].id, { left: { by: amountToPan } }, 3);
		itemPans.push(panAnimation);
		tickerText[0].style.width = "9999px";
		textItems.push(tickerText[0]);
		tickerItems[i].style.width = itemWidth + 'px';
		//tickerItems[i].style.height = newsTicker.style.height;
	}
	
	//duplicate the first item in the list and append it to the end
	var firstItem = tickerItems[0].cloneNode(true);
	newsTicker.appendChild(firstItem);

	function setNextTicker() {
		if (amountMoved >= movementLimit) {
			newsTicker.style.left = "0px";
			amountMoved = 0;
			currentItem = 0;
		}
		setTimeout(panCurrentItem, 1000);
		for (var i=0;i<textItems.length;i++) {
			if (1 != currentItem) textItems[i].style.left = "0px";
		}
		setTimeout(goTicker, 8000);
	}
	
	function goTicker() {
		newsTickerNext.animate();
		amountMoved += -amountToMove;
		currentItem++;
	}
	
	function panCurrentItem() {
		itemPans[currentItem].animate();
	}

	var amountToMove = -(itemWidth + 30);
    var attributes = {
        left: { by: amountToMove }
    };
    var newsTickerNext = new YAHOO.util.Anim('news_ticker', attributes, .5, YAHOO.util.Easing.easeBoth);
	newsTickerNext.onComplete.subscribe(setNextTicker);
	
	setNextTicker();
	
};