// twitter helpers
$(function(){
	showTweets('#twitterholder', 'CenterDynamics', 2);
});


function showTweets(elem, username, number)
	{
		
		var tweetFeed = 'http://twitter.com/status/user_timeline/' + username + '.json?count=' + number + '&callback=?'
		
		$.getJSON(tweetFeed, function(d)
		{
			var html = ''; //<ul>';
			$.each(d, function(i,item)
			{
				html+='<p>'+parseTextURL(item.text)+' <span class="mark">' + TweetFriendlyTime(item.created_at) + '</span></p>';
			
			});
			
			$(elem).append(html);
		})
	}
	
function parseTextURL(url) {
	return url.replace(/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/, function(url) {return url.link(url);});
};
	
	
function TweetFriendlyTime(a) {
    var b = new Date();
    var c = new Date(a);
    if ($.browser.msie) {
        c = Date.parse(a.replace(/( \+)/, ' UTC$1'))
    }
    var d = b - c;
    var e = 1000,
        minute = e * 60,
        hour = minute * 60,
        day = hour * 24,
        week = day * 7;
    if (isNaN(d) || d < 0) {
        return ""
    }
    if (d < e * 7) {
        return "right now"
    }
    if (d < minute) {
        return Math.floor(d / e) + " seconds ago"
    }
    if (d < minute * 2) {
        return "about 1 minute ago"
    }
    if (d < hour) {
        return Math.floor(d / minute) + " minutes ago"
    }
    if (d < hour * 2) {
        return "about 1 hour ago"
    }
    if (d < day) {
        return Math.floor(d / hour) + " hours ago"
    }
    if (d > day && d < day * 2) {
        return "yesterday"
    }
    if (d < day * 365) {
        return Math.floor(d / day) + " days ago"
    } else {
        return "over a year ago"
    }
};
