jQuery.fn.moreLess=function(c){var f=this;var d=$.extend({},$.fn.moreLess.defaults,c);if($(f).text().length<d.minimumTextLength){return $(this)}if(!d.startExpanded){g(true,$(f))}b();$("span.moreLessControls").click(e);return $(this);function e(){var i=$(this).prev(".moreLessContent");var j=i.length>0;if(j&&i[0].style.display=="none"){i.slideDown(d.speed,function(){$(this).before(i.html()).remove();if(typeof d.callback=="function"){d.callback.call()}});a(j,$(this))}else{var h=$(this).parent();$(this).remove();g(false,h);h.append($(this));a(j,$(this));$(this).prev(".moreLessContent").slideUp(d.speed,function(){if(typeof d.callback=="function"){d.callback.call()}});$(this).click(e)}}function a(i,h){h.html(i?d.expandedText:d.collapsedText)}function g(l,j){var h=d.truncateIndex;var k=j.text();var i=j.html();if(d.truncateChar!=null){h=j.text().indexOf(d.truncateChar,h);if(h<0||h>d.maximumTruncateIndex){h=d.truncateIndex}}j.html(i.substring(0,h)+"<span class='moreLessContent' "+(l?"style='display:none;'":"")+">"+i.substring(h,i.length)+"</span>")}function b(h){$(f).append("<span class='moreLessControls'>"+(d.startExpanded?d.expandedText:d.collapsedText)+"</span>")}};$.fn.moreLess.defaults={startExpanded:false,collapsedText:'... <span class="moreLessControl">More</span>',expandedText:' <span class="moreLessControl">Less...</span>',truncateIndex:150,maximumTruncateIndex:200,truncateChar:" ",minimumTextLength:300,speed:"fast",callback:null};
