// JavaScript Document
function slideToggleOtherBox( boxId )
{
  jQuery( boxId ).children( '.list' ).hide();
  jQuery( boxId ).toggle();
  jQuery( boxId ).children( '.list' ).slideToggle();

  return false;
}

function slideToggleContent( boxId, openClass, closeClass )
{
  jQuery( boxId ).children( '.content' ).slideToggle();

  var boxH2 = boxId + ' h2';

  if ( !openClass )
  {
    openClass = 'open';
  }

  if ( !closeClass )
  {
    closeClass = 'closed';
  }

  if ( jQuery( boxH2 ).hasClass( openClass ) )
  {
    jQuery( boxH2 ).removeClass( openClass );
    jQuery( boxH2 ).addClass( closeClass );
  }
  else
  {
    jQuery( boxH2 ).removeClass( closeClass );
    jQuery( boxH2 ).addClass( openClass );
  }

  return false;
}

function slideToggleMoreRows( boxObj, toggleClass, openClass, closeClass )
{
  boxObj.find( '.' + toggleClass ).toggleClass( 'hidden' );

  var boxH2 = boxObj.find( 'h2' );

  if ( boxH2.hasClass( openClass ) )
  {
    boxObj.find( '.' + openClass )
      .removeClass( openClass )
      .addClass( closeClass );
  }
  else
  {
    boxObj.find( '.' + closeClass )
      .removeClass( closeClass )
      .addClass( openClass );
  }

  return false;
}

this.jSlideToggle = function()
{
  try
  {
    jQuery( '.jSlideToggle .head' ).each(
      function()
      {
        if ( jQuery( this ).children( 'h2' ).hasClass( 'closed' ))
        {
          jQuery( this ).parent().children( '.content,.list' ).hide();
        }

        if ( !jQuery( this ).children( 'h2' ).hasClass( 'open' ) &&
             !jQuery( this ).children( 'h2' ).hasClass( 'closed' ))
        {
          jQuery( this ).children( 'h2' ).addClass( 'open' );
        }
      }
    );

    jQuery( '.jSlideToggle .head' ).click(

      function( e )
      {
        var activeBox = jQuery( this );

        if ( activeBox.closest( '.jSlideToggle' ).hasClass( 'jSlideToggleCloseOthers' ) )
        {
          activeBox.addClass( 'jSlideToggleActive' );

          jQuery( '.jSlideToggle .head' ).each(
            function()
            {
              if ( !jQuery( this ).hasClass( 'jSlideToggleActive' ) )
              {
                jQuery( this ).parent().children( '.content,.list' ).hide();
                jQuery( this ).children( 'h2' ).removeClass( 'open' );
                jQuery( this ).children( 'h2' ).addClass( 'closed' );
              }
            }
          );

          activeBox.removeClass( 'jSlideToggleActive' );
        }

        activeBox.parent().children( '.content, .list' ).slideToggle();
        var activeBoxH2 = activeBox.children( 'h2' );

        if ( activeBoxH2.hasClass( 'open' ) )
        {
          activeBoxH2.removeClass( 'open' ).addClass( 'closed' );
        }
        else
        {
          activeBoxH2.removeClass( 'closed' ).addClass( 'open' );
        }

        return false;
      }
    );

  }
  catch (e) {alert(e); }
};

// starting the script on page load
jQuery( document ).ready( function() {
  jSlideToggle();
} );

