window.onload=function(){
	var mainmenu = new menu_deroulant('mainmenu');
};

//Classe Javascript permettant de gérer les menus déroulants
var menu_deroulant = Class.create();
menu_deroulant.prototype = {
  initialize: function(id_menu) {
    this.id_menu = id_menu;
	this.addEvents();
  },
  addEvents: function(){
  	var i = 0;
  	$$('dl#'+this.id_menu+' dt').each(function(item){
		item.writeAttribute({'class':this.id_menu+i});
		i++;
		item.observe('mouseover', function(){
			this.display_smenu(item);
		}.bind(this));
		item.observe('mouseout', function(){
			this.hide_smenu(item);
		}.bind(this));
	}.bind(this));
	$$('dl#'+this.id_menu+' dd').each(function(item){
		item.observe('mouseover', function(){
			this.display_smenu(item);
		}.bind(this));
		item.observe('mouseout', function(){
			this.hide_smenu(item);
		}.bind(this));
	}.bind(this));
  },
  display_smenu: function(item)
  {
   	nextElement = item.next();
	item.setStyle({'visibility' : 'visible'});
	if (nextElement != null) {
		if (nextElement.nodeName == "DD") {
			nextElement.makePositioned();
			var position = Element.positionedOffset(item);
			var dimensions = Element.getDimensions(item);
			var left = position.left+'px';
			var top = position.top+dimensions.height+'px';
			nextElement.setStyle({
				'visibility': 'visible',
				'left': left,
				'top': top
			});
		}
	}
		
  },
  hide_smenu: function(item)
  {
  	nextElement = item.next();
	if(nextElement != null)
	{
		if(nextElement.nodeName == "DD")
		{
			nextElement.setStyle({'visibility' : 'hidden'});	
		}	
		else
		{
			item.setStyle({'visibility' : 'hidden'});
		}
	}
	else
	{
		item.setStyle({'visibility' : 'hidden'});
	}	
  }
};
