/**
 * Objet de gestion des sous menus par onglets
 */

if(typeof benchmark == "undefined") var benchmark = new Object();

/**
 * Constructeur de l'objet ObjGestionCaractere
 */
benchmark.ObjTetiereMenu = function() {
	
	var uriCourant = document.location.pathname.replace('/content/2_', '');
	var uriCourant = uriCourant.replace('/content/', '');
	var uriCourant = uriCourant.replace('/index/2_', '');
	var uriCourant = uriCourant.replace('/listweb', '');
	var uriCourant = uriCourant.replace('/article', '');
	var uriCourant = uriCourant.replace('/numero', '');
	var uriCourant = uriCourant.replace('/html/aide/', '');
	var uriCourant = uriCourant.replace('/html/', '');
	var uriCourant = uriCourant.replace('.jsp', '');
	var menuCourant='accueil';
	var sousMenuCourant='';
	if(uriCourant=="/"){sousMenuCourant='a-la-une';}
	if(uriCourant=="carte-blanche"){sousMenuCourant='carte-blanche';}
	if(uriCourant=="portraits"){sousMenuCourant='portraits';}
	if(uriCourant=="numero.php" || uriCourant=="index.php" || uriCourant=="recherche" || uriCourant=="/search/recherche/resultats" || uriCourant=="/index/" || uriCourant=="/index/2_numero.php"){sousMenuCourant='recherche';}
	if(uriCourant=="magazine"){sousMenuCourant='en-kiosque';}
	if(uriCourant=="magazine-mensuel"){sousMenuCourant='mensuel';}
	if(uriCourant=="magazine-collections"){sousMenuCourant='collection';}
	if(uriCourant=="agenda-expositions"){sousMenuCourant='expositions';}
	if(uriCourant=="agenda-rencontres"){sousMenuCourant='rencontres';}
	if(uriCourant=="agenda-evenements"){sousMenuCourant='evenements';}
	if(uriCourant=="livres-classique"){sousMenuCourant='lire-classiques';}
	if(uriCourant=="livre-du-mois"){sousMenuCourant='livre-du-mois';}
	if(uriCourant=="livres-antiquite"){sousMenuCourant='antiquite';}
	if(uriCourant=="livres-moyen-age"){sousMenuCourant='moyen-age';}
	if(uriCourant=="livres-XVI-XVIII"){sousMenuCourant='xvi-xviii';}
	if(uriCourant=="livres-XIX-XXI"){sousMenuCourant='xix-xxi';}
	if(uriCourant=="livres-general"){sousMenuCourant='general';}
	if(uriCourant=="qui-sommes-nous"){sousMenuCourant='qui-sommes-nous';}
	if(uriCourant=="/contact/add_contact"){sousMenuCourant='contacter-nous';}
	if(uriCourant=="magazine"||uriCourant=="magazine-mensuel"||uriCourant=="magazine-collections"){menuCourant='magazines';}
	if(uriCourant=="agenda-expositions" || uriCourant=="agenda-rencontres" || uriCourant=="agenda-evenements"){menuCourant='agenda';}
	if(uriCourant=="livres-classique" || uriCourant=="livre-du-mois" || uriCourant=="livres-antiquite" || uriCourant=="livres-moyen-age" || uriCourant=="livres-XVI-XVIII" || uriCourant=="livres-XIX-XXI" || uriCourant=="livres-general"){menuCourant='livres';}
	if(uriCourant=="/store/" || uriCourant=="/store/window/ViewWindow" || uriCourant=="/store/process/choose_step"|| uriCourant=="/store/process/address_shipping_submit" || uriCourant=="/store/process/go_payment" || uriCourant=="/store/payment_success"){menuCourant='boutique';}
	if(uriCourant=="qui-sommes-nous" || uriCourant=="/contact/add_contact"){menuCourant='contact';}

	this.itemcourant = 'onglet_'+menuCourant;
	this.sousitemcourant = sousMenuCourant;

	/*
	 * Stockage de l'item courant
	 */
	//this.itemcourant = 'onglet_accueil';
	this.timer;
	this.dureetimer = 50;//2000
	
	
	/**
	 * Initialisation des actions à effectuer sur le survol des onglets
	 */
	 // L'ensemble des sousmenu est masqué
	this.masquesousmenu();
	this.initialiseonglets();
	this.initialisetimer();

}

/**
 * Méthodes publiques de l'objet ObjGestionCaractere
 */
benchmark.ObjTetiereMenu.prototype = {

	/**
	 * Initialisation des actions à effectuer sur le survol des onglets
	 */
	initialiseonglets: function() {
		
		var refObjet = this;
		
		// Action sur chaque item du menu
		jQueryTetiereMenu("#menu li").each(
			function(){
				
				// Le sous menu courant est affiché
				if(jQueryTetiereMenu(this).hasClass('actif')) {
					var identifiant = jQueryTetiereMenu(this).attr('id');
					refObjet.activesousmenu(jQueryTetiereMenu('#sous-menu_'+identifiant));
					refObjet.itemcourant = identifiant;
				}

				// Lorsque l'on survole l'item
				jQueryTetiereMenu(this).bind("mouseover",
					function(evt) {
						
						// On bloque le timer
						refObjet.cleartimer();
						
						// L'ensemble des sousmenu est masqué
						refObjet.masquesousmenu();
						
						var identifiant = jQueryTetiereMenu(this).attr('id');
						
						// Si on survol un onglet autre que celui qui est actif, on desactive l'onglet actif
						if(identifiant != this.itemcourant) {
							jQueryTetiereMenu('#menu li.actif').addClass('inactif');
						}
						
						// On désactive tous les items
						refObjet.desactivemenu();
						
						// On active l'item
						jQueryTetiereMenu(this).addClass('survol');
						
						// On affiche le bon idem
						refObjet.activesousmenu(jQueryTetiereMenu('#sous-menu_'+identifiant));
						
					}
				);
				
				// Lorsque l'on quitte l'item
				jQueryTetiereMenu(this).bind("mouseout",
					function(evt) {
						refObjet.initialisetimer();
					}
				);	
				
			}
		);
		
		// Action sur le sous menu
		jQueryTetiereMenu("#sous-menu").bind("mouseover",
			function(evt) {
				refObjet.cleartimer();
			}
		);
		
		// Action sur le sous menu
		jQueryTetiereMenu("#sous-menu").bind("mouseout",
			function(evt) {
				refObjet.initialisetimer();
			}
		);

	},
	
	initialisetimer: function() {
		this.timer = setTimeout('ObjTetiereMenu.reinitialiseonglets()',this.dureetimer);
	},

	/**
	 * Masquage de l'ensemble des sous-menus
	 */
	masquesousmenu: function() {
		jQueryTetiereMenu("#sous-menu ul").each(
			function(){
				jQueryTetiereMenu(this).hide();
			}
		);
	},
	
	/**
	 * Suppression de la classe actif sur l'ensemble des items du menu
	 */
	desactivemenu: function() {
		jQueryTetiereMenu("#menu li").each(
			function(){
				jQueryTetiereMenu(this).removeClass('survol');
			}
		);
	},
	
	/**
	 * Active un élément du sous-menu
	 */
	activesousmenu: function(elt) {
		elt.show();
	},
	
	
	cleartimer: function() {
		clearTimeout(this.timer);
	},
	
	reinitialiseonglets:function() {
		
		// L'ensemble des sousmenu est masqué
		this.masquesousmenu();
		
		// On désactive tous les items
		this.desactivemenu();
	
		// On active l'item
		jQueryTetiereMenu('#'+this.itemcourant).addClass('survol');
		if(this.sousitemcourant) { jQueryTetiereMenu('.'+this.sousitemcourant).addClass('actif'); }
		this.activesousmenu(jQueryTetiereMenu('#sous-menu_'+this.itemcourant));
		
		jQueryTetiereMenu('#menu li.actif').removeClass('inactif');
	}

}

// Initialisation de l'objet

var ObjTetiereMenu = new benchmark.ObjTetiereMenu();