$(window).load(function() {
	// translucent borders
	/*$('.borderedImage').each(function() {
		var $this = $(this);
		$this
			.wrap(
				$('<div class="borderedImageContainer"></div>')
					.addClass(this.className)
					.removeClass('borderedImage')
			)
			.after(
				$('<div class="borderedImageBorder"></div>')
				.css({ width: ($this.outerWidth() - 10)+'px', height: ($this.outerHeight() - 10)+'px' })
			);
	});*/
	
	// captions
	// wanted to use <figure> and <figcaption> but HTML5 + JS + IE = pain
	$('img[title]').wrap('<div class="captionedImage" />').after(function(idx, html) {
		return '<span class="caption">'+$(this).attr('title')+'</span>';
	}).parent().addClass(function(idx, currentClass) {
		return $('img', this).prop('className');
	});
});

$(function() {
	// footer tweet
	var url = 'http://api.twitter.com/1/statuses/user_timeline.json?screen_name=Mercury_PBM&trim_user=1&count=3';
	$.ajax({
		url: url,
		dataType: 'jsonp',
		crossDomain: true,
		success: function(data) {
			var currentTime = Math.round((new Date()).getTime() / 1000);
			
			var tweetTime = Math.round(parseDate(data[0].created_at) / 1000);
			
			//alert(currentTime + " " + tweetTime);
			//alert(data[0].created_at + " | " + Date.parse(data[0].created_at));
			
			$('footer .twitter .tweet')
				.html('<p>'+data[0].text+'</p><span class="datetime"><a href="http://twitter.com/Mercury_PBM/statuses/'+data[0].id_str+'">'+timeAgo(currentTime - tweetTime)+' ago</a></span>');
				
			$('#twitterFeed ul').html(function() {
				var ret = '';
				
				for(var i in data)
				{
					tweetTime = Math.round(parseDate(data[i].created_at) / 1000);
					
					ret += '<li><p>'+data[i].text+'</p><span class="datetime"><a href="http://twitter.com/Mercury_PBM/statuses/'+data[i].id_str+'">'+timeAgo(currentTime - tweetTime)+' ago</a></span></li>';
				}
				return ret;
			});
		}
	});
});

function parseDate(str) {
  var v=str.split(' ');
  return new Date(Date.parse(v[1]+" "+v[2]+", "+v[5]+" "+v[3]+" UTC"));
}

var timeAgo = function(seconds) {
	var ret = '';
	var originalSeconds = seconds;
	
	// months
	if(seconds > 2592000)
	{
		if(seconds > 5184000)
		{
			ret += ('' + Math.floor(seconds / 2592000) + ' months');
		}
		else
		{
			ret += '1 month';
		}
		
		seconds %= 2592000;
	}
	
	// days
	if(seconds > 86400)
	{
		ret += (ret != '') ? ', ' : '';
		if(seconds > 172800)
		{
			ret += ('' + Math.floor(seconds / 86400) + ' days');
		}
		else
		{
			ret += '1 day';
		}
		
		seconds %= 86400;
	}
	
	// hours
	if(seconds > 3600)
	{
		ret += (ret != '') ? ', ' : '';
		if(seconds > 7200)
		{
			ret += ('' + Math.floor(seconds / 3600) + ' hours');
		}
		else
		{
			ret += '1 hour';
		}
		
		seconds %= 3600;
	}
	
	// minutes
	if(seconds > 60)
	{
		ret += (ret != '') ? ', ' : '';
		if(seconds > 120)
		{
			ret += ('' + Math.floor(seconds / 60) + ' minutes');
		}
		else
		{
			ret += '1 minute';
		}
	}
	
	return ret;
};
