/*
jQuery FAQ 1.0
Turns a <dl> list into a animated FAQ list; CSS classes added: 'opened', 'hover'
General usage:
$('dl').faq({
    speed:300,     		// speed of each element animation
    effect:"slideFade",	// effect: slide, fade, slideFade
    enumerate: false,	// add enumeration for the FAQ questions, nesting supported
    toggle: false		// should display only one element or not
});
*/
(function(a){a.fn.faq=function(d){if(d=="collapseAll"){return b(this)}if(d=="expandAll"){return f(this)}var g={speed:300,effect:"slideFade",enumerate:false,toggle:false};d=a.extend({},g,d);if(d.enumerate){h(this,null)}return this.each(function(){a("dd",this).hide();a("dt",this).css("cursor","pointer").hover(function(){a(this).addClass("hover")},function(){a(this).removeClass("hover")}).click(function(){if(a(this).hasClass("opened")){a(this).removeClass("opened");e(a(this).next("dd"),d)}else{if(d.toggle){var i=a(this).parent("dl").find("dt.opened");e(i.next("dd"),d);i.removeClass("opened")}a(this).addClass("opened");c(a(this).next("dd"),d)}})});function e(i){switch(d.effect){case"slideFade":i.animate({opacity:"hide",height:"hide"},d.speed);break;case"slide":i.slideUp(d.speed);break;case"fade":i.fadeOut(d.speed);break;default:i.hide();break}}function c(i){switch(d.effect){case"slideFade":i.animate({opacity:"show",height:"show"},d.speed);break;case"slide":i.slideDown(d.speed);break;case"fade":i.fadeIn(d.speed);break;default:i.show();break}}function h(k,j){var n=k.children("dt");for(var m=0;m<n.length;m++){var l=j==null?"":j+".";var o=a(n.get(m));o.prepend("<span>"+l+(m+1)+") </span>");h(o.next("dd").children("dl"),l+(m+1))}}function b(i){return i.each(function(){a("dd",this).hide();a("dt",this).removeClass("opened")})}function f(i){return i.each(function(){a("dd",this).show();a("dt",this).addClass("opened")})}}})(jQuery);
