var Menu = Class.create();
Menu.prototype = {
		
	initialize: function(id) {
		this.classOnglet = 'ongletDynamique';
		this.classTop5 = 'top5';
		this.idSubMenu = 'subMenu';
		this.idSurMenu = 'surMenu';
		this.classActive = 'active';
		
		this.timer = false;
		
		this.id = id;
		this.aOnglets = $$('.' + this.classOnglet);
		this.aTop5 = $$('.' + this.classTop5);
		this.elSubMenu = $(this.idSubMenu);
		this.elSurMenu = $(this.idSurMenu);
		this.ongletAccueil = document.getElementById(this.idAccueil);
		this.elFirstActive = $$('.' + this.classActive).first();
		
		this.ecoute();
	},
	
	ecoute: function() {
		var me = this;
		
		this.aOnglets.each(function(onglet) {
			Event.observe(onglet, EVENT_MOUSEOVER, function() {
				
				var item = onglet.id.substring(6);
				
				if (me.elSubMenu.firstChild.tag == 'p')
					me.elSubMenu.down().remove();

				me.aTop5.each(function(elt) {
					elt.hide();
				});

				me.aOnglets.each(function(elt) {
					if (elt.down().hasClassName(me.classActive))
						elt.down().removeClassName(me.classActive);
				});
				
				onglet.down().addClassName(me.classActive);
				
				if ( item.match(/\d+/) )
					$('bestPays' + item).show();
				else if ('Accueil' != item)
					$('liens' + item).show();
			});
		});
		
		Event.observe(this.elSurMenu, EVENT_MOUSEOUT, function(event) {
			me.timer = setTimeout(function() { me.reinitOnglets(); }, "10");
		});
		
		Event.observe(this.elSurMenu, EVENT_MOUSEOVER, function(event) {
			if (me.timer)
				clearTimeout(me.timer);
		});
	},
	
	reinitOnglets: function()
	{
		var me = this;

		me.aTop5.each(function(elt) {
			elt.hide();
		});

		me.aOnglets.each(function(elt) {
			if (elt.down().hasClassName(me.classActive))
				elt.down().removeClassName(me.classActive);
		});

		if (me.elFirstActive)
			me.elFirstActive.addClassName(me.classActive);
	}
};

Event.observe(window, 'load', function() { new Menu('menu'); });