$(document).ready( function () {
	$.ajax({
		url: 'http://api.twitter.com/1/statuses/user_timeline/bartjohnston.json',
		dataType: 'jsonp',
		success: function(data) {
		
			for (var i=0; i<5; i++) {
				var t = data[i];
				var d = new Date(Date.parse(t.created_at.replace(/(\S+) (\S+) (\S+) (\S+) (\S+) (\S+)/, '$1 $3 $2 $6 $4 $5')));
				var days = ["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday"];
				var months = ["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sept","Oct","Nov","Dec"];
				var d_str = days[d.getDay()] + " " + months[d.getMonth()] + " " + d.getDate() + ", " + d.getFullYear();
				
				var tweet = '<div class="tweet">';
				tweet += 	'	<p class="tweet-content">' + linkifyMentions(linkify(t.text)) + '</p>';
				tweet += 	'	<p class="tweet-postedon"><span class="datetime" title="' + t.created_at + '">' + d_str + '</span> <a href="http://twitter.com/bartjohnston/status/' + t.id + '">twitter</a></p>';
				if (i==0) {
					tweet +=	'	<p class="twitter-showmore"><a href="#" onclick="showMoreTweets()">show <span class="more">more</span> <span class="less">less</span></a></p>';
				}
				tweet +=	'</div>';
				
				$("#module-twitter").append(tweet);
			}
		
			$(".datetime").humane_dates(907200);
		
		}
	});
});

function showMoreTweets() {
	$(".tweet:not(:first)").slideToggle();
	$("#module-twitter").toggleClass("expanded");
}

function linkify(string) {
	return string.replace(
		/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/g,
		"<a href='$&' target='_blank'>$&</a>"
	);
}

function linkifyMentions(string) {
	// turn @mentions in twitter links
	return string.replace(
		/@([A-Za-z0-9-_]+)/g,
		"<a href='http://www.twitter.com/$1' target='_blank'>$&</a>"
	);
}