var STORY_TIMEOUT = 5000; // 5s
var CHAR_TIMEOUT = 50; // 0.5s
var ANCHOR_ID = "ticker";
var CURSOR_CHAR = "_";

var currentItem = -1;
var currentChar = 0;
var tickerAnchor = null;

function initTicker() {
	tickerAnchor = document.getElementById(ANCHOR_ID);
	setTimeout(runTicker, CHAR_TIMEOUT);
}
	
function runTicker() {
  	if (tickerItems.length == 0) return true;
	if (currentChar == 0) {
		currentItem++;
		currentItem = currentItem % tickerItems.length;

		tickerAnchor.href = unescape(tickerItems[currentItem]['link']);
	}

	currentChar++;
	
	switch (tickerItems[currentItem]['type']) {
		case 'important': tickerAnchor.innerHTML = '<span class="tickeritemtype">Important News:</span> '; break;
		case 'special_offer': tickerAnchor.innerHTML = '<span class="tickeritemtype">Special Offer:</span> '; break;
		case 'latest_news': tickerAnchor.innerHTML = '<span class="tickeritemtype">Latest News:</span> '; break;
		case 'news': tickerAnchor.innerHTML = '<span class="tickeritemtype">News:</span> '; break;
		case 'update': tickerAnchor.innerHTML = '<span class="tickeritemtype">Update:</span> '; break;
		case 'events': tickerAnchor.innerHTML = '<span class="tickeritemtype">Events:</span> '; break;
		case 'announcements': tickerAnchor.innerHTML = '<span class="tickeritemtype">Announcements</span>: '; break;				
	}
	tickerAnchor.innerHTML += unescape(tickerItems[currentItem]['title']).substr(0,currentChar);

	if (currentChar == unescape(tickerItems[currentItem]['title']).length) {
		setTimeout(runTicker, STORY_TIMEOUT);
		currentChar = 0;
	} else {
		if (currentChar % 2) {
			tickerAnchor.innerHTML += "_";
		}

		setTimeout(runTicker, CHAR_TIMEOUT);
	}
}

if (window.addEventListener) {
	window.addEventListener('load', initTicker, false);
} else if (window.attachEvent) {
	window.attachEvent('onload', initTicker);
} else {
	window.onload = initTicker;
}