forked from philipbeel/Tweetable
-
Notifications
You must be signed in to change notification settings - Fork 0
/
jquery.tweetable.min.js
14 lines (14 loc) · 1.94 KB
/
jquery.tweetable.min.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
/*
* tweetable 1.6.1 - jQuery twitter feed generator plugin
*
* Copyright (c) 2009 Philip Beel (http://www.theodin.co.uk/)
* Dual licensed under the MIT (http://www.opensource.org/licenses/mit-license.php)
* and GPL (http://www.opensource.org/licenses/gpl-license.php) licenses.
*
* With modifications from Philipp Robbel (http://www.robbel.com/) and Patrick DW (stackoverflow)
* for IE compatibility.
*
* Revision: $Id: jquery.tweetable.js 2011-01-06 $
*
*/
(function($){$.fn.tweetable=function(options){var defaults={limit:5,username:'philipbeel',time:false,replies:false,position:'append',onComplete:function($ul){}};var options=$.extend(defaults,options);return this.each(function(options){var act=$(this);var $tweetList=$('<ul class="tweetList">')[defaults.position.toLowerCase()+'To'](act);var tweetMonth='';var shortMonths=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];var api="http://api.twitter.com/1/statuses/user_timeline.json?screen_name=";var count="&count=";$.getJSON(api+defaults.username+count+defaults.limit+"&callback=?",act,function(data){var ctr=0;$.each(data,function(i,tweet){if(defaults.replies===false&&tweet.in_reply_to_status_id!=null)return;i=ctr++;$tweetList.append('<li class="tweet_content_'+i+'"><p class="tweet_link_'+i+'">'+tweet.text.replace(/#(.*?)(\s|$)/g,'<span class="hash">#$1 </span>').replace(/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig,'<a href="$&">$&</a> ').replace(/@(.*?)(\s|\(|\)|$)/g,'<a href="http://twitter.com/$1">@$1 </a>$2')+'</p></li>');if(defaults.time==true){for(var iterate=0;iterate<=12;iterate++){if(shortMonths[iterate]==tweet.created_at.substr(4,3)){tweetMonth=iterate+1;if(tweetMonth<10){tweetMonth='0'+tweetMonth}}}$('.tweet_link_'+i).prepend('<p><small> '+tweet.created_at.substr(8,2)+'/'+tweetMonth+'/'+tweet.created_at.substr(26,4)+', '+tweet.created_at.substr(11,5)+'</small></p>')}});defaults.onComplete($tweetList)})})}})(jQuery);