var Site = {
  slideDuration : 400,
  init : function() {    Site.vertical($('vertical'), '.collapse', '.title', 'li', '.plus');  },
  vertical: function(root, vpanels, vselectors, vareas, vpluses) {    Site.panels = root.getElements(vpanels);    Site.selectors = root.getElements(vselectors);    Site.areas = root.getElements(vareas);    Site.pluses = root.getElements(vpluses);    Site.collapsibles = [];
    Site.selectors.each( function(selector, i) {      Site.collapsibles[i] = new Fx.Slide(Site.panels[i], {         duration: Site.slideDuration,         transition: Fx.Transitions.Cubic.easeOut,        onComplete: function(request) {           // var open = request.getStyle('margin-top').toInt();          // if(open >= 0) new Fx.Scroll(window).toElement(Site.selectors[i]);        }      });   
      if(selector.hasClass('mouse')) {        event.preventDefault();        selector.addEvent('mouseenter', function(event) {          Site.collapsibles[i].slideIn();        });        if(Site.areas.getLast() != null) {          Site.areas[i].addEvent('mouseleave', function(event) {            Site.collapsibles[i].slideOut();          });                   }        else {          selector.addEvent('mouseleave', function(event) {            Site.collapsibles[i].slideOut();          });                   }      }
      else {        selector.addEvent('click', function(event) {                event.preventDefault();          Site.collapsibles[i].toggle().chain(function() {            Site.collapsibles.each(function(collapse, n) {              if((collapse.open == true) && (n != i)) {                collapse.slideIn();              }            });                        if((Site.pluses[i] != null)) {              newHTML = Site.pluses[i].innerHTML == '+' ? '&ndash;' : '+';              Site.pluses[i].innerHTML = newHTML;            }           });        });             }                    Site.collapsibles[i].hide();      $('vertical').getElements('dd.open').slide('in');
          });    	        if(($('collapse-all') != null) && (($('expand-all') != null))) {      $('collapse-all').onclick = function(){        Site.selectors.each( function(selector, i) {          Site.collapsibles[i].hide();          if((Site.pluses[i] != null)) {            Site.pluses[i].innerHTML = '+';          }                    $('expand-all').removeClass("invisible");          $('collapse-all').addClass("invisible");        });        return false;      }           $('expand-all').onclick = function(){        Site.selectors.each( function(selector, i) {          Site.collapsibles[i].show();          if((Site.pluses[i] != null)) {            Site.pluses[i].innerHTML = '&ndash;';          }          $('collapse-all').removeClass("invisible");          $('expand-all').addClass("invisible");        });        return false;      }        }  }};

window.addEvent('domready', function() {  if($('vertical') != null) {    Site.init();  }});