/* Author: Jason

*/
$.mjr =
{
	utilities :
	{
		isIE : function () 
		{
		    var a = navigator.userAgent;
		    return {
		        ie: a.match(/MSIE\s([^;]*)/)
		    }
		}
	},
	defaults : 
	{
		time:120,
		bottom: "-7"
	},
	navigation :
	{		
		init: function ()
		{
			$('.navigation li a').hover($.mjr.navigation.onRollOver, $.mjr.navigation.onRollOut);
		},
		onRollOver: function(event)
		{
			$(event.currentTarget).animate({bottom:"0"}, $.mjr.defaults.time);
		},
		onRollOut: function(event)
		{
			$(event.currentTarget).animate({bottom:$.mjr.defaults.bottom}, $.mjr.defaults.time);
		}
	},
	twitter: 
	{
		init: function()
		{
			$.jTwitter('mrjasonroy', 2, 
			function(data)
			{
		        $('#post').empty();
		        $.each(data, function(i, post){
					var postContent = $.mjr.twitter.linkify(post.text);
		            $('#post').append(
		                '<p>' 
						+ postContent 
						+ '<span class="date"> - '
						+ $.mjr.twitter.twitterDate(post.created_at)
						+ '</span>'
						+ '</p>'
		            );
		        });
		    });
		},
		linkify: function(text)
		{
			    text = text.replace(/(https?:\/\/\S+)/gi, function (s) {
			        return '<a href="' + s + '">' + s + '</a>';
			    });

			    text = text.replace(/(^|)@(\w+)/gi, function (s) {
			        return '<a href="http://twitter.com/' + s + '">' + s + '</a>';
			    });

			    text = text.replace(/(^|)#(\w+)/gi, function (s) {
			        return '<a href="http://search.twitter.com/search?q=' + s.replace(/#/,'%23') + '">' + s + '</a>';
			     });
			    return text;
		},
		twitterDate : function (a) {
		    var b = new Date();
		    var c = new Date(a);
		    if ($.mjr.utilities.isIE) {
		        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"
		    }
		}
	},
	search:
	{
		init: function()
		{
			$('#searchbox').inputPreviewText({
				inputPreviewText: "Search Posts"
			});
			$('#searchbox').keypress(function(event) {
				if (event.keyCode == 13 || event.which == 13) {
					$('.search-button').click();
				}
			});
		}
		
	}
};


$(document).ready(function(){
		$.mjr.navigation.init();
		//$.mjr.twitter.init();
		$.mjr.search.init();

	
})
























