var updateIntervalS = 60;
var posters = new Array();
var sponsors = new Array();

var toHide = -1;
var s_toHide = -1;
var oldi = -1;
var s_oldi = -1;
function initWelcome() {
	triggerUpdate();
	setInterval(triggerUpdate, updateIntervalS*1000);
	
	
	var elem = $('tavla').firstChild;
	
	while (elem != null) {
		
		if (elem.tagName == 'IMG') {
			elem.fade('hide');
			elem.style.display='block';
			posters.push(elem);
		}
					
					
		elem = elem.nextSibling;	
	}
	
	showNewPoster();
	setInterval(showNewPoster, 5*1000);
	
	
	var elem = $('topsponsor').firstChild;
	
	while (elem != null) {
		
		if (elem.tagName == 'A') {
			elem.fade('hide');
			elem.style.display='block';
			sponsors.push(elem);
		}
					
					
		elem = elem.nextSibling;	
	}
	
	showNewSponsor();
	setInterval(showNewSponsor, 5*1100);
}

function showNewPoster() {
	posters.each(function(item, index) {
		if (index != oldi) {
			item.fade('hide');
		}
	});
	
	posters.each(function(item) {
		item.style.zIndex = 0;
	});
	
	if (posters.length == 0)
		return;
	
	var i = (oldi+1)%posters.length;

	posters[i].style.zIndex = 10;
	posters[i].fade('in');
	toHide = oldi;
	
	if (posters[toHide])
		setTimeout(function() { posters[toHide].fade('out'); }, 500);
	oldi = i;
}

function showNewSponsor() {
	sponsors.each(function(item, index) {
		if (index != s_oldi) {
			item.fade('hide');
		}
	});
	
	sponsors.each(function(item) {
		item.style.zIndex = 0;
	});

	if (sponsors.length == 0)
		return;
	
	var i = (s_oldi+1)%sponsors.length;
	sponsors[i].style.zIndex = 10;
	sponsors[i].fade('in');
	s_toHide = s_oldi;
	
	if (sponsors[s_toHide])
		setTimeout(function() { sponsors[s_toHide].fade('out'); }, 500);
	s_oldi = i;
}

function triggerUpdate() {
	var script = document.createElement('script');
	script.src = 'http://iphonelaunchparty.com/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 tweetul = document.getElementById('twitterscroll');
	startTime = getNowSecs();
	
	var dataTweets = updateData.tweets;
	var tweets = new Array();
	
	for (var i = 0; i<dataTweets.length; i++) {
		var tweet = dataTweets[i];
		
		if (tweet.timestamp == 0)
			continue;
		
		if (!alreadySeen[tweet.timestamp])
			tweets.push(tweet);
		
		alreadySeen[tweet.timestamp] = true;
	}
	
	
	newSectionWidth = Math.max(0, tweets.length*210 );
	
	if (startWidth + currentLeft + newSectionWidth > 21000) {
		if (tweetul.hasChildNodes()) {
			while (tweetul.childNodes.length >= 1) {
				tweetul.removeChild(tweetul.firstChild);
			}
		}
		
		startWidth = 0;
	} else {
		startWidth = startWidth + currentLeft;
	}
	
	currentSectionWidth = newSectionWidth;
	
	if (startWidth == 0)
		currentSectionWidth = currentSectionWidth -210*3;
	
	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 = 16;
		img.height = 16;
		div.appendChild(img);
		
		var span = document.createElement('span');
		span.innerHTML = tweet.name;
		div.appendChild(span);
		
		tweetul.appendChild(li);
	}
	
	if (!scrollInterval) {
		scrollInterval = setInterval(twitterAnimate,50);
	}
}

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