﻿var refreshPause = 60000
var storyPause = 2000;
var characterPause = 100;
var timesCalled = 0;

var storyCount;
var currentStory;
var currentCharacter;

var lastUpdate;


function startTicker(){
	storyCount = getElements(getElement('newsticker'), 'li').length;
	if (storyCount > 0){
		currentStory = 1;
		currentCharacter = 1;
		
		lastUpdate = new Date();
		
		runTicker();	
	}
}

function pauseComp(millis) {
	var date = new Date();
	var curDate = null;

	do { curDate = new Date(); } 
	while(curDate-date < millis);
} 

function wait() {
   if(timesCalled >= 2){
      return;
   }else{
      setTimeout(wait, 1000);
      timesCalled += 1;
   }
}

function runTicker(){
	var storyTextAll;
	var storyText;

	storyTextAll = new String(getElements(getElement('newsticker'), 'li')[currentStory - 1].innerHTML);
	
	if (currentCharacter > storyTextAll.length){
		// Move to next story		
		if (currentStory != storyCount){
			currentStory++;
		}else{
			currentStory = 1;			
		}		
		currentCharacter = 1;
		pauseComp(1000);
		//wait();
		setTimeout(runTicker, storyPause);
						
	}else{
		// Show next character of current story
		if (currentCharacter < storyTextAll.length){
			storyText = storyTextAll.substr(0, currentCharacter) + '_';
		}else{
			storyText = storyTextAll.substr(0, currentCharacter);
		}
		
		getElement('newstickervisibleitem').innerHTML = storyText;
		
		currentCharacter++;
		
		setTimeout(runTicker, characterPause);
	}
}


function refreshPage(){
	window.location.reload();
}


function getElement(elementID){
	if (document.getElementById){
		return document.getElementById(elementID);
	}else{
		return document.all[elementID];
	}
}


function getElements(parentElement, tagName){
	if (document.getElementsByTagName){
		return parentElement.getElementsByTagName(tagName);
	}else{
		return document.all[parentElement.id].all;
	}
}


if (window.addEventListener){
	// W3C method
	window.addEventListener('load', startTicker, false);
}else if (window.attachEvent){
	// IE method
	window.attachEvent('onload', startTicker);
}


