(function($){var j='tweets';function TweetsPlugin(){this._defaults={username:'ev',cycle:false,count:5,animateDuration:6000}}$.extend(TweetsPlugin.prototype,{markerClassName:'hasTweetsPlugin',baseUrl:'http://twitter.com',urlRegex:/((ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?)/,usernameRegex:/(@)(\w+)/g,setDefaults:function(a){$.extend(this._defaults,a||{});return this},_attachTweetsPlugin:function(a,b){a=$(a);if(a.hasClass(this.markerClassName)){return}a.addClass(this.markerClassName);a.hide();var c={settings:$.extend({},this._defaults)};$.data(a[0],j,c);this._fetchTwitterData(a,b)},_fetchTwitterData:function(b,c){var d=$.data(b[0],j);$.extend(d.settings,c);var e=this;$.getJSON('http://twitter.com/statuses/user_timeline/'+d.settings.username+'.json?count='+d.settings.count+'&callback=?',function(a){e._buildMarkupFromData(b,a)})},_buildMarkupFromData:function(e,f){var g=this;var h='';$.each(f,function(i,a){var b=a.text,b=g._autoLinkText(b),b=g._autoLinkUsernames(b),timestamp=g._autoLinkTimestamp(a.id,a.created_at,a.user.screen_name);var c=$('<span />').addClass('created_at').text(timestamp);var d='<li>'+b+'<span class="created_at">'+timestamp+'</span></li>';h+=d});$('<ul/>').html(h).appendTo(e);this._displayTweets(e)},_autoLinkText:function(a){if(this.urlRegex.test(a)){return a.replace(this.urlRegex,"<a href='$1'>$1</a>")}else{return a}},_autoLinkUsernames:function(a){if(this.usernameRegex.test(a)){return a.replace(this.usernameRegex,"$1<a href='http://twitter.com/$2'>$2</a>")}else{return a}},_autoLinkTimestamp:function(a,b,c){var d=new Date(b),dateString=[d.getMonth()+1,d.getDate(),d.getFullYear()].join('/');var e=[this.baseUrl,c,'statuses',a].join('/');return"<a href='"+e+"'>"+dateString+"</a>"},_displayTweets:function(a){var b=$.data(a[0],j);b.settings.cycle?this._cycleTweets(a):a.fadeIn()},_cycleTweets:function(b){var c=$.data(b[0],j);b.show();b.find('ul > li').hide();b.find('ul > li:first').fadeIn();var i=1;setInterval(function(){var a=b.find('li');a.hide();a.eq(i).fadeIn();if(i==a.length){b.find('ul > li:first').fadeIn();i=1}else{i++}},c.settings.animateDuration)}});var k=['settings'];$.fn.tweets=function(a){var b=Array.prototype.slice.call(arguments,1);if($.inArray(a,k)>-1){return $.tweets['_'+a+'TweetsPlugin'].apply($.tweets,[this[0]].concat(b))}return this.each(function(){if(typeof a=='string'){$.tweets['_'+a+'TweetsPlugin'].apply($.tweets,[this].concat(b))}else{$.tweets._attachTweetsPlugin(this,a||{})}})};$.tweets=new TweetsPlugin()})(jQuery);
