var tweetsArray = [];

function twitterCallback(twitters) {
	if (!!twitters.results && twitters.results.length)
		{
		twitters = twitters.results;
		for (var x = 0; x < twitters.length; x++)
			{
			tweetsArray.push(twitters[x]);
			}
		}
	}

function twitterCallback2(twitters) {
	for (var x = 0; x < twitters.length; x++)
		{
		var parts = twitters[x].created_at.split(" ");
		twitters[x].created_at = parts[0] + ', ' + parts[1] + ' ' + parts[2] + ' ' + parts[5] + ' ' + parts[3] + ' ' + parts[4];
		tweetsArray.push(twitters[x]);
		}
	twitters = tweetsArray;
	twitters.sort( function(a,b)
			{
			a = (new Date(a.created_at)).getTime();
			b = (new Date(b.created_at)).getTime();
			if (a > b) return -1;
			if (a < b) return 1;
			return 0;
			}
		);
	var statusHTML = [];
	var renderedTweets = 0;
	for (var i=0; i<twitters.length &&renderedTweets < 4; i++){
		var username = !!twitters[i].from_user ? twitters[i].from_user : (document.body.className.indexOf('en')!=-1 ? 'fs_deals' : 'fs_aubaines');
		var status = twitters[i].text.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, function(url) {
		return '<a href="'+url+'">'+url+'</a>';
		}).replace(/\B@([_a-z0-9]+)/ig, function(reply) {
		return  reply.charAt(0)+'<a href="http://twitter.com/'+reply.substring(1)+'">'+reply.substring(1)+'</a>';
		});
		if (status.indexOf('@') == -1)
			{
			renderedTweets++;
			statusHTML.push('<li><span><a href="http://twitter.com/'+username+'">@'+username+':</a> '+status+'</span> <a href="http://twitter.com/'+username+'/statuses/'+twitters[i].id+'">'+relative_time(twitters[i].created_at)+'</a></li>');
			}
		}
	document.getElementById('twitter_update_list').innerHTML = statusHTML.join('');
}

function relative_time(time_value) {
	//var values = time_value.split(" ");
	//time_value = values[1] + " " + values[2] + ", " + values[5] + " " + values[3];
	//var parsed_date = new Date.parse(time_value);
	var parsed_date = new Date(time_value);
	var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
	var delta = parseInt((relative_to.getTime() - parsed_date) / 1000);
	delta = delta + (relative_to.getTimezoneOffset() * 60);
	if (delta < 60) {
	return 'less than a minute ago';
	} else if(delta < 120) {
	return 'about a minute ago';
	} else if(delta < (60*60)) {
	return (parseInt(delta / 60)).toString() + ' minutes ago';
	} else if(delta < (120*60)) {
	return 'about an hour ago';
	} else if(delta < (24*60*60)) {
	return 'about ' + (parseInt(delta / 3600)).toString() + ' hours ago';
	} else if(delta < (48*60*60)) {
	return '1 day ago';
	} else {
	return (parseInt(delta / 86400)).toString() + ' days ago';
	}
}

