/*------------------------------------------------------------------------------
jQuery m1Collapsable Plugin
version:      0.1
last change:  15/11/10 [] 
author:       Michael Popov
email:        MixaLbl4@tut.by
----------------------------------------------------------------------------*/

  jQuery.fn.m1Collapsable = function(settings) {
    settings = jQuery.extend({
      collapsed: true,
      controllerClass: 'controller',
      indicatorClass: 'indicator',
      permanentClass: 'permanent'
    }, settings);

    $(this).each(function(){
      var collapsable = $(this);

      /* elements initializing */
      collapsable.addClass('collapsable');

      if (settings.collapsed){
        collapsable.addClass('collapsed-wrap').children(':not(.' + settings.controllerClass + ', .' + settings.indicatorClass + ', .' + settings.permanentClass +')').addClass('hidden');
        collapsable.find('.' + settings.controllerClass +', .' + settings.indicatorClass).addClass('collapsed');
      };

      /* binding events */
      collapsable.find('.' + settings.controllerClass).bind('click', function(event){
        collapsable.toggleClass('collapsed-wrap').children(':not(.' + settings.controllerClass + ', .' + settings.indicatorClass + ', .' + settings.permanentClass +')').toggleClass('hidden');
        collapsable.find('.' + settings.controllerClass +', .' + settings.indicatorClass).toggleClass('collapsed');
        collapsable.find('.' + settings.indicatorClass).toggleClass('expanded');
      });
    });
  };

