(function($){	    $.tweets = function(el, options){        var base = this;                base.$el = $(el);        base.el = el;                 base.$el.data("tweets", base);                base.init = function(){                        base.options = $.extend({},$.tweets.defaultOptions, options);            base.months = $.extend({},$.tweets.months);			            $.getJSON(		    	'http://search.twitter.com/search.json?callback=?&rpp='+base.options.tweetCount+'&q=' + base.options.query,        		function(data) {            		$.each(data, function(i, tweets){                		if (tweets.length != undefined){                   			                   			if (tweets[0] != undefined){                   				if (tweets[0].created_at != undefined){                  	 													var $tweetContainer = $(document.createElement("ul"))														.attr("id","tweet-cont")									    				.addClass("tweet-cont");									base.$el.append($tweetContainer);																		for(var i = 0; i < tweets.length; i++){                       														    var tweetClass = "odd";									    if(i%2 == 0){									    	tweetClass = "even";									    }									    													    var $tweet = $(document.createElement("li"))									    			.attr("id","tweet_"+tweets[i].id)									    			.addClass(tweetClass)									    			.addClass("tweet");									    $tweetContainer.append($tweet);									    									    if(base.options.showAvatar){									    	var $tweetPhoto = $(document.createElement("img"))									    					.addClass("avatar")									    					.attr("src",tweets[i].profile_image_url);									    	$tweet.append($tweetPhoto);									    }									    									    var $tweetDesc = $(document.createElement("div"))									    				.addClass("text")									    				.html("<a href='http://www.twitter.com/"+tweets[i].from_user+"' target='_blank'>"+tweets[i].from_user+"</a>: " + base.replaceURLs(tweets[i].text));											    $tweet.append($tweetDesc);									    									    var tweetDate = new Date(tweets[i].created_at);									    var today = new Date();									    									    var timeDiff;									    var minDiff = Math.ceil((today.getTime()-tweetDate.getTime())/(60*1000));									    var hourDiff = Math.ceil((today.getTime()-tweetDate.getTime())/(60*60*1000));									    var dayDiff = Math.ceil((today.getTime()-tweetDate.getTime())/(24*60*60*1000));									                           														    if(minDiff < 59){									    	timeDiff = "<div class='time'>about "+minDiff+" minutes ago from "+base.fixEncHTML(tweets[i].source)+"</div>";									    }else if(hourDiff < 24){									    	timeDiff = "<div class='time'>about "+hourDiff+" hours ago from "+base.fixEncHTML(tweets[i].source)+"</div>";									    }else if(dayDiff < 5){									    	timeDiff = "<div class='time'>"+dayDiff+" days ago from "+base.fixEncHTML(tweets[i].source)+"</div>";									    }else{									    	var AMPM = "PM";									    	var myHours;									    	if(tweetDate.getHours() < 12){									    		AMPM = "AM";									    		if(tweetDate.getHours() == 0){									    			myHours = "12";									    		}else{									    			myHours = tweetDate.getHours();									    		}									    	}else{									    		myHours = tweetDate.getHours()-12;									    	}									    										    	var myDate = tweetDate.getDate() +"th";									    	if(tweetDate.getDate() == 1 || tweetDate.getDate() == 21 || tweetDate.getDate() == 31){									    		myDate = tweetDate.getDate() +"st";									    	}else if(tweetDate.getDate() == 2 || tweetDate.getDate() == 22){									    		myDate = tweetDate.getDate() +"nd";									    	}else if(tweetDate.getDate() == 3 || tweetDate.getDate() == 23){									    		myDate = tweetDate.getDate() +"rd";									    	}									    	timeDiff = "<div class='time'>"+myHours+":"+tweetDate.getMinutes()+" "+AMPM+" "+base.months[tweetDate.getMonth()]+" "+myDate+" from "+base.fixEncHTML(tweets[i].source)+"</div>";									    }									    									    $tweet.append(timeDiff);									    									    //var $tweetLinks = $(document.createElement("div"))//									    			.addClass("links")//									    			.html("<a href='http://www.twitter.com/home?status=@"+tweets[i].from_user+"' target='_blank'>Reply</a>&nbsp;&middot;&nbsp;<a href='http://www.twitter.com/"+tweets[i].from_user+"/statuses/"+tweets[i].id+"' target='_blank'>View Tweet</a>");//									    //									    $tweet.append($tweetLinks);									}                  	 			}                   			}                   		}  		                	});                	                	if(jQuery.isFunction(base.options.callback)){            			base.options.callback();            		}        		}            );        }                base.isEncHTML = function(str){			if(str.search(/&amp;/g) != -1 || str.search(/&lt;/g) != -1 || str.search(/&gt;/g) != -1 || str.search(/&quot;/g) != -1) 		    	return true; 		  	else 		    	return false;        }                base.fixEncHTML = function(str){        	if(base.isEncHTML(str)) 		      return str.replace(/&amp;/g, '&').replace(/&lt;/g, '<').replace(/&gt;/g, '>').replace(/&quot;/g,"'"); 		    return str;         }                base.replaceURLs = function(text){			text = text.replace(base.options.aTagRegexp,"<a href='$1' target='_blank'>$1</a>");			text = text.replace(base.options.userRegexp,"$1<a class='user' href='http://www.twitter.com/$2' target='_blank'>@$2</a>");			text = text.replace(base.options.hashtagRegexp,"$1<a class='hashtag' href='http://search.twitter.com/search?q=%23$2' target='_blank'>#$2</a>");			return text;        }                base.init();    }		$.tweets.months = new Array(		"January",		"February",		"March",		"April",		"May",		"June",		"July",		"August",		"September",		"October",		"November",		"December"	);	    $.tweets.defaultOptions = {        query:"twitter",		tweetCount:150,		callback:null,		aTagRegexp:/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig,		hashtagRegexp:/(^|\s)#(\w+)/g,		userRegexp:/(^|\s)@(\w+)/g,		abrMonths:false,		showAvatar:false    }	    $.fn.tweets = function(options){        return this.each(function(){            (new $.tweets(this, options));        });    }	})(jQuery);
