
(function($){$.fn.twitterfeed=function(username,options){var defaults={limit:10,header:true,tweeticon:true,tweetname:false,tweettime:true,retweets:false,replies:true,ssl:false};var options=$.extend(defaults,options);return this.each(function(i,e){var $e=$(e);var s='';if(!$e.hasClass('twitterFeed'))$e.addClass('twitterFeed');if(username==null)return false;if(options.limit>200)options.limit=200;if(options.ssl)s='s';if(options.replies==true){options.replies=false;}else{options.replies=true;}
var url='http'+s+'://api.twitter.com/1/statuses/user_timeline.json?include_rts='+options.retweets+'&exclude_replies='+options.replies+'&screen_name='+username+'&count='+options.limit;var params={};params.count=options.limit;jQuery.ajax({url:url,data:params,dataType:'jsonp',success:function(o){_callback(e,o,options);}});});};var _callback=function(e,feeds,options){if(!feeds){return false;}
var html='';var row='odd';if(options.header){var name=feeds[0].user.name;var screenname=feeds[0].user.screen_name;var icon=feeds[0].user.profile_image_url;var link='<a href="http://twitter.com/'+screenname+'/" title="Visit '+name+' on Twitter">';html+='<div class="twitterHeader">'+
link+'<img src="'+icon+'" alt="'+name+'" /></a>'+'<span> Follow '+link+name+' On Twitter! </a></span>'+'</div>';}
html+='<div class="twitterBody">'+'<ul>';for(var i=0;i<feeds.length;i++){if(feeds[i].retweeted_status){var tweet=feeds[i].retweeted_status;}else{var tweet=feeds[i];}
var link='<a href="http://twitter.com/'+tweet.user.screen_name+'/" title="Visit '+tweet.user.name+' on Twitter">';html+='<li class="twitterRow '+row+'">';if(options.tweeticon){var icon=tweet.user.profile_image_url;html+=link+'<img src="'+icon+'" alt="'+name+'" /></a>';}
if(options.tweetname){var name=tweet.user.name;html+='<div class="tweetName">'+link+name+'</a></div>'}
if(options.tweettime){var lapsedTime=getLapsedTime(tweet.created_at);html+='<div class="tweetTime">'+lapsedTime+'</div>'}
var text=tweet.text.replace(/(https?:\/\/[-_.!~*\'()a-zA-Z0-9;\/?:\@&=+\$,%#]+)/,function(u){var shortUrl=(u.length>30)?u.substr(0,30)+'...':u;return'<a href="'+u+'" title="Click to view this link">'+shortUrl+'</a>';}).replace(/@([a-zA-Z0-9_]+)/g,'@<a href="http://twitter.com/$1" title="Click to view $1 on Twitter">$1</a>').replace(/(?:^|\s)#([^\s\.\+:!]+)/g,function(a,u){return' <a href="http://twitter.com/search?q='+encodeURIComponent(u)+'" title="Click to view this on Twitter">#'+u+'</a>';});html+='<p>'+text+'</p>'
html+='</li>';if(row=='odd'){row='even';}else{row='odd';}}
html+='</ul>'+'</div>'
$(e).html(html);};function getLapsedTime(strDate){strDate=Date.parse(strDate.replace(/^([a-z]{3})( [a-z]{3} \d\d?)(.*)( \d{4})$/i,'$1,$2$4$3'));var todayDate=new Date();var tweetDate=new Date(strDate)
var lapsedTime=Math.round((todayDate.getTime()-tweetDate.getTime())/1000)
if(lapsedTime<60){return'< 1m';}else if(lapsedTime<(60*60)){return(Math.round(lapsedTime/60)-1)+'m';}else if(lapsedTime<(24*60*60)){return(Math.round(lapsedTime/3600)-1)+'h';}else if(lapsedTime<(7*24*60*60)){return(Math.round(lapsedTime/86400)-1)+'d';}else{return(Math.round(lapsedTime/604800)-1)+'w';}};})(jQuery);
