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 = '<strong>Important News</strong>:&nbsp;'; break;
		case 'special_offer': tickerAnchor.innerHTML = '<strong>Special Offer</strong>:&nbsp;'; break;
		case 'latest_news': tickerAnchor.innerHTML = '<strong>Latest News</strong>:&nbsp;'; break;
		case 'news': tickerAnchor.innerHTML = '<strong>News</strong>:&nbsp;'; break;
		case 'update': tickerAnchor.innerHTML = '<strong>Update</strong>:&nbsp;'; break;
		case 'events': tickerAnchor.innerHTML = '<strong>Events</strong>:&nbsp;'; break;
		case 'social_media': tickerAnchor.innerHTML = '<strong>Social Media</strong>:&nbsp;'; break;
		case 'iphone': tickerAnchor.innerHTML = '<strong>iPhone</strong>:&nbsp;'; break;
		case 'ecommerce': tickerAnchor.innerHTML = '<strong>eCommerce</strong>:&nbsp;'; break;
		case 'branding': tickerAnchor.innerHTML = '<strong>Brand Development</strong>:&nbsp;'; break;
		case 'web_design': tickerAnchor.innerHTML = '<strong>Web Design</strong>:&nbsp;'; break;
		case 'announcements': tickerAnchor.innerHTML = '<strong>Announcements</strong>:&nbsp;'; 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;
}

