/*
 * delectable 1.0 - jQuery delicious 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.
 *
 * Revision: $Id: jquery.delectable.js 2009-09-13 $ 
 *
 */
 (function($){$.fn.delectable=function(options){var defaults={limit:15,date:true,tags:false,tagLimit:6,username:'philipbeel'};var options=$.extend(defaults,options);return this.each(function(options){var act=$(this);var api="http://feeds.delicious.com/v2/json/";var count="?count=";$.getJSON(api+defaults.username+count+defaults.limit+"&callback=?",act,function(data){$.each(data,function(i,item){if(i==0){$(act).prepend('<ul class="deliciousList"><li class="delicious_content_'+i+'">')}else{$('.deliciousList').append('<li class="delicious_content_'+i+'">')}$('.delicious_content_'+i+'').append('<span class="delicious_link_'+i+'">'+item.u.replace(/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig,'<a href="$&">$&</a> '));if(defaults.tags==true){var tagged=item.t;$.each(tagged,function(n,val){if(n<=defaults.tagLimit){$('.delicious_content_'+i).append('<a class="tag" title="'+val+'"> '+val+'</a>')}})}if(defaults.date==true){$('.delicious_content_'+i).append('<small> '+item.dt.substr(0,10)+'</small>')}});$('a.tag').live('click',function(){getTags($(this).attr('title'))})});function getTags(newTag){var newApi="http://feeds.delicious.com/v2/json/tags/philipbeel";$.getJSON("http://feeds.delicious.com/v2/json/tag/"+newTag+count+defaults.limit+"&callback=?",act,function(data){$(act).empty();$.each(data,function(num,elem){if(num==0){$(act).prepend('<ul class="deliciousList"><li class="delicious_content_'+num+'">')}else{$('.deliciousList').append('<li class="delicious_content_'+num+'">')}$('.delicious_content_'+num+'').append('<span class="delicious_link_'+num+'">'+elem.u.replace(/(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig,'<a href="$&">$&</a> '));if(defaults.tags==true){var moreTagged=elem.t;$.each(moreTagged,function(n,val){if(val==newTag){if(n<=defaults.tagLimit){$('.delicious_content_'+num).append('<a class="tagged" title="'+val+'"> '+val+'</a>')}}else{if(n<=defaults.tagLimit){$('.delicious_content_'+num).append('<a class="tag" title="'+val+'"> '+val+'</a>')}}})}if(defaults.date==true){$('.delicious_content_'+num).append('<small> '+elem.dt.substr(0,10)+'</small>')}})})}})}})(jQuery);