var updateIntervalS = 60;

function initWelcome() {
	if (!document.getElementById('twitterscroll'))
		return;
	
	triggerUpdate();
	setInterval(triggerUpdate, updateIntervalS*1000);
}

function triggerUpdate() {
	var script = document.createElement('script');
	script.src = '/blackout/welcome-twitter.js?r='+(Math.round(Math.random()*10000));
	document.body.appendChild(script);
}

var startTime;
var startWidth = 0;
var currentSectionWidth;
var currentLeft = 0;
var scrollInterval;
var alreadySeen = new Object();;
function twitterUpdate(updateData) {
	var tweetdiv = document.getElementById('twitter');
	var tweetul = document.getElementById('twitterscroll');
	startTime = getNowSecs();
	
	var dataTweets = updateData.tweets;
	var tweets = new Array();
	
	for (var i = 0; i<dataTweets.length && i<10; i++) {
		var tweet = dataTweets[i];
		
		if (tweet.timestamp == 0)
			continue;
		
		if (!alreadySeen[tweet.timestamp])
			tweets.push(tweet);
		
		alreadySeen[tweet.timestamp] = true;
	}
	
	var oldStart = startWidth;
	if (startWidth + currentLeft > 210000) {
		if (tweetul.hasChildNodes()) {
			while (tweetul.childNodes.length >= 1) {
				tweetul.removeChild(tweetul.firstChild);
			}
		}
		
		startWidth = 0;
	} else {
		startWidth = startWidth + currentLeft;
	}

	newSectionWidth = 0;
	for (var i = 0; i<tweets.length; i++) {
		var tweet = tweets[i];
		
		var li = document.createElement('li');
		//li.innerHTML = tweet.text;
		
		var div = document.createElement('div');
		div.className = "author";
		li.appendChild(div);
		
		var img = document.createElement('img');
		img.src = tweet.avatar;
		img.width = 24;
		img.height = 24;
		div.appendChild(img);
		
		var span = document.createElement('span');
		span.innerHTML = tweet.name;
		div.appendChild(span);
		
		var span2 = document.createElement('span');
		span2.innerHTML = tweet.text;
		li.appendChild(span2);
		
		tweetul.appendChild(li);
		
		newSectionWidth += li.clientWidth;
	}

	if (newSectionWidth>0) {
		currentSectionWidth = newSectionWidth;
	} else {
		startWidth = oldStart;
	}
	
	if (startWidth == 0)
		currentSectionWidth = currentSectionWidth -tweetdiv.clientWidth;
	

	if (!scrollInterval) {
		scrollInterval = setInterval(twitterAnimate,3000);
	}
}

function twitterAnimate() {
	var passed = getNowSecs()-startTime;
	currentLeft = (currentSectionWidth)*(passed/updateIntervalS);
		
	document.getElementById('twitterscroll').style.left = (-(startWidth+currentLeft))+'px';
}
