(function(b){b.fn.expandCollapse=function(a){a=b.extend({},b.fn.expandCollapse.defaults,a);b.fn.expandCollapse.doClick=function(c){text=c.data.text;target=c.data.target;trigger=c.data.trigger;a=c.data.options;tText=(hidden=target.is(":hidden")?true:false)?a.collapseText:a.expandText;tAddClass=hidden?a.collapseClass:a.expandClass;tRemoveClass=hidden?a.expandClass:a.collapseClass;tAnimation=hidden?a.expandAnimation:a.collapseAnimation;tDuration=hidden?a.expandDuration:a.collapseDuration;target.animate(tAnimation,
tDuration);a.updateClass&&trigger.removeClass(tRemoveClass).addClass(tAddClass);a.updateText&&text.text(tText);return false};return this.each(function(){a.startHidden&&b(this).hide();tText=(hidden=b(this).is(":hidden")?true:false)?a.expandText:a.collapseText;tClass=hidden?a.expandClass:a.collapseClass;if(a.triggerElement.length){textElement=a.textElement.length?a.textElement:a.triggerElement;a.updateText&&textElement.text(tText);a.updateClass&&a.triggerElement.addClass(tClass);a.triggerElement.bind("click",
{options:a,trigger:a.triggerElement,text:textElement,target:b(this)},function(c){return b.fn.expandCollapse.doClick(c)})}else{triggerElement=b(a.triggerTag).prepend(b("<a/>").attr({href:"#",title:tText}));a.updateText&&triggerElement.children().text(tText);a.updateClass&&triggerElement.addClass(tClass);triggerElement.bind("click",{options:a,trigger:triggerElement,text:triggerElement.children(),target:b(this)},function(c){return b.fn.expandCollapse.doClick(c)});b(this).before(triggerElement)}})};b.fn.expandCollapse.defaults=
{updateText:true,updateClass:true,startHidden:false,triggerTag:"<span/>",triggerElement:"",expandClass:"expand",collapseClass:"collapse",textElement:"",expandText:"more",collapseText:"less",expandAnimation:{height:"show"},collapseAnimation:{height:"hide"},expandDuration:0,collapseDuration:0}})(jQuery);

