/**
 * Menu
 */
var Menu = Class.create({
  /**
   * Init Menu
   */
  initialize: function(elemMenu) {
	    
	this.activeMenu = null;
	
	this.elemMenus = elemMenu.select(".mainmenu");
    for (var nMenu = 0; nMenu < this.elemMenus.length; nMenu++) {
      this.elemMenus[nMenu].observe('click', this.clickMenu.bind(this));
    }
    
    // see if we have an sctive submenu
    var elemSubmenus = elemMenu.select('.submenu');     
    for (var nMenu = 0; nMenu < elemSubmenus.length; nMenu++) {
      if (elemSubmenus[nMenu].style.display != 'none') {
   	    this.activeMenu = elemSubmenus[nMenu];    	  
   	    elemSubmenus[nMenu].addClassName('open');    	  
      }
    }    
  },
  
  clickMenu: function(evt) {
    var elemMenu = evt.element().up();
	
    var elemSubmenus = elemMenu.down('.submenu'); 
    if (elemSubmenus) {
    	
      if (this.activeMenu) {
    	if (this.activeMenu == elemSubmenus) {
   	      elemSubmenus.removeClassName('open');
     	  elemSubmenus.blindUp({'duration' : 0.3});
     	  this.activeMenu = null;
    	}
    	else {
    	  this.activeMenu.removeClassName('open');
    	  this.activeMenu.blindUp({'duration' : 0.3});
    		
    	  this.activeMenu = elemSubmenus;
    	  
  	      elemSubmenus.addClassName('open');
 	      elemSubmenus.blindDown({'duration' : 0.3});
    	}
      }	
      else {
	    elemSubmenus.addClassName('open');
 	    elemSubmenus.blindDown({'duration' : 0.3});
 	    this.activeMenu = elemSubmenus;
      }
    }
  }

});
