  var _Switch = {
    _switchImages: {
      on:  '/PAT2/templates/pics/minus.gif'
      ,off: '/PAT2/templates/pics/plus.gif'
    },
    _switchDiv: null,
    _state: null,

    initSwitch: function(){

      this.src = this._switchImages.off;
      var str = this.id.substring(7);
      this._state = 'off';
      this._switchDiv = document.getElementById('sub_'+str);
      this._switchDiv.style.display='none';

      Event.observe(
      this
      ,'click'
      ,function(e){
        var elem = Event.element(e);
        if(elem._state == 'off'){
          elem._state = 'on';
          elem.src = elem._switchImages.on;
          elem.alt = 'Hide';
          elem._switchDiv.style.display='block';
        }
        else {
          elem._state = 'off';
          elem.src = elem._switchImages.off;
          elem.alt = 'Show';
          elem._switchDiv.style.display='none';
        }
      }
      )
    }
  };

  var Subs = {
    SubInit: function(){
      //alert(this.id);
    }
  };


  function initCategories(){

    var _Switchables = document.getElementsByClassName('switchable');

    if(_Switchables.length==0){
      return;
    }
    var c=0;
    $A(_Switchables).each(
    function(_switchable)
    {
      Object.extend(_switchable, Subs);
      _switchable.id = 'sub_' + c;
      Subs.SubInit();
      c++;
    }
    );

    var _Switches = document.getElementsByClassName('divSwitch');
    if(_Switches.length==0){
      return;
    }
    var c=0;
    $A(_Switches).each(
    function(_switch)
    {
      Object.extend(_switch, _Switch);
      _switch.id = 'switch_' + c;
      _switch.initSwitch();
      c++;
    }

    );
  }


  function hideAll(){
    var _Switches = document.getElementsByClassName('divSwitch');
    if(_Switches.length==0){
      return;
    }
    var c=0;
    $A(_Switches).each(
    function(_switch)
    {
      _switch.src = _Switch._switchImages.off;
      _switch._switchDiv.style.display='none';
    }

    );
  }

  function showAll(){

    var _Switches = document.getElementsByClassName('divSwitch');
    if(_Switches.length==0){
      return;
    }

    var c=0;
    $A(_Switches).each(
    function(_switch)
    {
      _switch.src = _Switch._switchImages.on;
      _switch._switchDiv.style.display='block';
    }

    );
  }


  Event.observe(window, 'load', initCategories, false);
