function twitterCallback(tweets) {
  var statusHTML = [];
	const TWEET_LIMIT = 3; //Maximum tweets to display
	const EXPIRY_DAYS = 5; //How many days to display a tweet
  for (var i=0; i<tweets.length; i++){
    var username = tweets[i].user.screen_name;

		var tweet_date = new Date(tweets[i].created_at);
		var now = new Date();
		var days_difference = Math.floor( (now - tweet_date)/ (1000*3600*24));
		//Skip tweets from longer than EXPIRY_DAYS days ago
		if (days_difference > EXPIRY_DAYS ) {
			continue;
		}

		//Skip replies
		if (tweets[i].text.search(/^@/) != -1) {
			continue;
		}
		//If there's a link, remove URL from message and the make whole tweet a link
    var url = tweets[i].text.match(/((https?|s?ftp)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g);
    var status = tweets[i].text.replace(/((https?|s?ftp|ssh)\:\/\/[^"\s\<\>]*[^.,;'">\:\s\<\>\)\]\!])/g, '');
		if (url) {
			status = '<a href="' + url + '">' + status + '</a>'
		}
		
		//Push the Tweet into the status box
    statusHTML.push('<li><span>'+status+'</span> <a style="font-size:85%" href="http://twitter.com/'+username+'/statuses/'+tweets[i].id+'"><em>'+relative_time(tweets[i].created_at)+'</em></a></li>');
  }
  document.getElementById('twitter_update_list').innerHTML = statusHTML.slice(0, TWEET_LIMIT).join('');
}
