/*
	https://github.com/addywaddy/jquery.tagcloud.js
*/
(function($){$.fn.tagcloud=function(options){var opts=$.extend({},$.fn.tagcloud.defaults,options);tagWeights=this.map(function(){return $(this).attr("rel");});tagWeights=jQuery.makeArray(tagWeights).sort(compareWeights);lowest=tagWeights[0];highest=tagWeights.pop();range=highest-lowest;if(range===0){range=1;}if(opts.size){fontIncr=(opts.size.end-opts.size.start)/range;}if(opts.color){colorIncr=colorIncrement(opts.color,range);}return this.each(function(){weighting=$(this).attr("rel")-lowest;if(opts.size){$(this).css({"font-size":opts.size.start+(weighting*fontIncr)+opts.size.unit});}if(opts.color){$(this).css({"color":tagColor(opts.color,colorIncr,weighting)});}});};$.fn.tagcloud.defaults={size:{start:14,end:18,unit:"pt"}};function toRGB(code){if(code.length==4){code=jQuery.map(/\w+/.exec(code),function(el){return el+el;}).join("");}hex=/(\w{2})(\w{2})(\w{2})/.exec(code);return[parseInt(hex[1],16),parseInt(hex[2],16),parseInt(hex[3],16)];}function toHex(ary){return"#"+jQuery.map(ary,function(i){hex=i.toString(16);hex=(hex.length==1)?"0"+hex:hex;return hex;}).join("");}function colorIncrement(color,range){return jQuery.map(toRGB(color.end),function(n,i){return(n-toRGB(color.start)[i])/range;});}function tagColor(color,increment,weighting){rgb=jQuery.map(toRGB(color.start),function(n,i){ref=Math.round(n+(increment[i]*weighting));if(ref>255){ref=255;}else{if(ref<0){ref=0;}}return ref;});return toHex(rgb);}function compareWeights(a,b){return a-b;}})(jQuery);
