(function($){
	$.fn.facebook_feed = function(options) {

		var defaults = {
			nb: 1,
			feed: null,
			access_token: null
		};
				
		var options = $.extend(defaults, options);
		
		this.each(function(){
		
			var obj = $(this);
			
			obj.addClass("facebook_feed");
			obj.append("<div class='loader'>Chargement du mur ...</div>");
			
			if(options.feed != null)
				$.ajax({
					url: options.feed+"?limit="+options.nb+"&access_token="+options.access_token,
					dataType: "jsonp",
					success: function(feed)
					{
						var html = "<div>";
						
						$(feed.data).each(function(i, elt){
							className = (i%2 == 0)?"odd":"even";
							borderClass = (i==0)?" first":(i==(options.nb-1))?" last":"";
							
							date = elt.created_time.substr(0,10).split("-");
							date = date[2]+"/"+date[1]+"/"+date[0];
							
							var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/i;
							if(elt.message)		
								msg = elt.message.replace(exp,"<a href='$1'>$1</a>"); 
							else
								msg = "";
							
							html += "<div class='feed "+className+borderClass+"'>";
							if(elt.picture){
								html += "<div class='img'><a href='"+elt.link+"'><img src='"+elt.picture+"' alt='"+elt.message+"' /></a>"
								 + "<p class='date'><img src='"+elt.icon+"' alt='"+elt.type+"' title='"+elt.type+"' /> <small>"+date+"</small></p></div>";
							}
							html += "<div class='txt'>"
								 + "<h3>"+elt.from.name+"</h3>"
								 + "<p><a href='http://www.facebook.com/LesContaminesMontjoie' target='_blank'>"+msg+"</a></p><span>(...)</span></div>"
								 + "<div class='clear'></div>"
								 + "</div>";
						})
						
						html += "</div>";
						
						obj.html(html);
						obj.find(".loader").remove();
					}
				});

			else
				obj.html("flux introuvable.");
			
		});
		
		return this;
	};
})(jQuery);
