String.prototype.parseURL = function() {
	return this.replace(/[A-Za-z]+:\/\/[A-Za-z0-9-_]+\.[A-Za-z0-9-_:%&\?\/.=]+/g, function(url) {
		return url.link(url).replace("<a",'<a target="_blank"');
	});
};

String.prototype.parseUsername = function() {
	return this.replace(/[@]+[A-Za-z0-9-_]+/g, function(u) {
		var username = u.replace("@","")
		return u.link("http://twitter.com/"+username).replace("<a",'<a target="_blank"');
	});
};

String.prototype.parseHashtag = function() {
	return this.replace(/[#]+[A-Za-z0-9-_]+/g, function(t) {
		var tag = t.replace("#","%23");
		return t.link("http://search.twitter.com/search?q="+tag).replace("<a",'<a target="_blank"');
	});
};

function twitterCallback2(obj) {
	var twitters = obj;
	var statusHTML = "";
	var username = "";
	username = twitters[0].user.screen_name;
	statusHTML = twitters[0].text.parseURL().parseUsername().parseHashtag();

	$('#tweet_container').html(statusHTML);
}
$(document).ready(function(){
        var s = [
            "http://twitter.com/statuses/user_timeline/addsomespice.json?callback=twitterCallback2&nonsense="+(new Date().getTime())
        ];

        var sc = "script", tp = "text/javascript", sa = "setAttribute", doc = document, ua = window.navigator.userAgent;
        for(var i=0, l=s.length; i<l; ++i) {
				var t=doc.createElement(sc);
				t[sa]("src", s[i]);
				t[sa]("type", tp);
				t[sa]("charset", 'utf-8');
				doc.getElementsByTagName("head")[0].appendChild(t);
        }
});
