/**
 * jQuery Simple Accordion Script
 * v1.1.2 by JB modified by TP
*/

jQuery.fn.multiaccordion = function(options) {
    // options
    var SLIDE_DOWN_SPEED = 'slow';
    var SLIDE_UP_SPEED = 'fast';
    var startClosed = options && options.start && options.start == 'closed';
    var on = options && options.on && (typeof options.on == 'number' && options.on > 0) ? options.on - 1 : 0;
    var closeAllOthers = options && options.closeAllOthers && options.closeAllOthers == 1;
    return this.each(function() {
        jQuery(this).addClass('accordionMultiContent'); // use to activate styling
        jQuery(this).find('dd').hide();
        jQuery(this).find('dt').click(function() {
            var current = jQuery(this.parentNode).find('dd:visible');
            var next = jQuery(this).find('+dd');
            
            //close current open layer if any other is open
            if (closeAllOthers){
                if (current[0] != next[0]) {
                    current.slideUp(SLIDE_UP_SPEED);
                    jQuery(this.parentNode).find('dt.selected').removeClass("selected");
                } 
            }
            if (next.is(':visible')) {
              next.slideUp(SLIDE_UP_SPEED);
              jQuery(this).removeClass("selected");
            } else {
              next.slideDown(SLIDE_DOWN_SPEED);
              jQuery(this).addClass("selected");
            }
        });
        if (!startClosed) {
          jQuery(this).find('dd:eq(' + on + ')').slideDown(SLIDE_DOWN_SPEED);
          jQuery(this).find('dt:eq(' + on + ')').addClass("selected");
        }
    });
};

jQuery.fn.multiaccordionToggle = function(options) {
    // options
    var SLIDE_DOWN_SPEED = 'slow';
    var SLIDE_UP_SPEED = 'slow';
    var startClosed = options && options.start && options.start == 'closed';
    var on = options && options.on && (typeof options.on == 'number' && options.on > 0) ? options.on - 1 : 0;
    var closeAllOthers = options && options.closeAllOthers && options.closeAllOthers == 1;
    return this.each(function() {
        jQuery(this).addClass('accordionMultiContent'); // use to activate styling
        jQuery(this).find('dd').hide();
        jQuery(this).find('dt').click(function() {
            var current = jQuery(this.parentNode).find('dd:visible');
            var next = jQuery(this).find('+dd');
            
            //close current open layer if any other is open
            
            if (closeAllOthers){
                if (current[0] != next[0]) {
                    current.slideUp(SLIDE_UP_SPEED);
                    jQuery(this.parentNode).find('dt.selected').addClass("closed");
                    jQuery(this.parentNode).find('dt.selected').removeClass("selected");
                } 
            }
            next.slideDown(SLIDE_DOWN_SPEED);
            jQuery(this).addClass("selected");
            jQuery(this).removeClass("closed");
            if (current[0] != next[0]) {
                 jQuery(this).find(".imgIconDown").fadeOut(SLIDE_DOWN_SPEED);
               jQuery(this.parentNode).find('dt.closed > img').fadeIn(SLIDE_UP_SPEED);
            } 
        });
        if (!startClosed) {
          jQuery(this).find('dd:eq(' + on + ')').slideDown(SLIDE_DOWN_SPEED);
          jQuery(this).find('dt').addClass("closed");
          jQuery(this).find('dt:eq(' + on + ')').addClass("selected");
          jQuery(this).find('dt:eq(' + on + ')').removeClass("closed");
          jQuery(this.parentNode).find('dt.selected > img').css("display", "none");
        }
    });
};