
	
/* au chargement de la page, on exécute les différentes fonctionnalités */
jQuery(document).ready(function(){
	/* on initialise toutes les tabulations */
	initTabs(paramsblocPractice, paramsPubs);	
}); 


/**
 * @author Laurent Leborgne
 * @description gestion des onglets
 */
var tabsTimer; // pour le défilement
var timeObj; // pour le settimeout du défilement
/* on initialise tous les onglets demandés */
var initTabs= function(){
	for(i=0;i<arguments.length;i++){
		settings = arguments[i];
		setTabsBehavior(settings.liste,settings.activeClassLi,settings.inactiveClassLi,settings.callbackAction);
		//test si timer requis
		if (settings.timerTab2Tab == 1 && settings.relClassForTimer) {	
		timeObj = settings;
			if(!isNaN(parseInt(jQuery(timeObj.relClassForTimer).attr("rel")))){					
				tabsTimer = setTimeout(function(){
					nextTabAuto(timeObj);
				},parseInt(jQuery(timeObj.relClassForTimer).attr("rel"))*1000);
			}
		}
	}
}
/* mise en place du comportement générique pour la gestion des onglets */
var setTabsBehavior = function (ulClass,activeClassLi,inactiveClassLi,callback){
	if(ulClass==".navPub"){
		jQuery(ulClass+" li").each(function(ind){
			jQuery(this).bind("mouseup", function(){
				//console.log("click sur l'élement parent = on flag un click 'humain' et non un trigger, pour désactiver le timer");
				jQuery(this).children("a:eq(0)").attr("rel","click");
			});
		});
	}
	jQuery(ulClass+" li a").each(function(index){
		jQuery(this).bind("click", function(){
			var destId=jQuery(this).attr("href");
			jQuery(this).parent("li").siblings("li").children("a").each(function(){
				jQuery(jQuery(this).attr("href")).hide();
				jQuery(this).parent("li."+activeClassLi).removeClass(activeClassLi).addClass(inactiveClassLi);
			})
			jQuery(this).parent('li').addClass(activeClassLi).removeClass(inactiveClassLi);
			//si un callback est défini, on l'exécute			
			if(callback)callback(index);	
			//si un timer est en route, on l'annule
			if(tabsTimer && jQuery(this).attr("rel")=="click")clearTimeout(tabsTimer);
			//on montre
			jQuery(destId).show();
			return false;
		});	
	});
	if(callback=="")jQuery(ulClass+" li a:eq(0)").trigger("click");
}
/** défilement auto des onglets pour la publicité **/
var nextTabAuto = function(obj){
	if(jQuery(obj.liste).length>0){
		if(jQuery(obj.liste+" li.on").next("li").length>0){
			jQuery(obj.liste+" li.on").next("li").children("a:eq(0)").trigger("click");
		}else{
			jQuery(obj.liste +" li a:eq(0)").trigger("click");
		}
		if(!isNaN(parseInt(jQuery(obj.relClassForTimer).attr("rel")))){					
			tabsTimer = setTimeout(function(){
				nextTabAuto(obj);
			},parseInt(jQuery(obj.relClassForTimer).attr("rel"))*1000);
		}	
	}
}

 /** onglets practice et météo **/
	var paramsblocPractice = {
		liste : "#navPractice",
		activeClassLi : "on",
		inactiveClassLi: "",
		callbackAction : "",
		buildArrows : false,
		arrowNextClass: ".next",
		arrowPrevClass : ".prev",
		nbElmVisibles : 0,
		timerTab2Tab : 0
	}
	
	/** publicités **/
	var paramsPubs = {
		liste : ".navPub",
		activeClassLi : "on",
		inactiveClassLi: "",
		callbackAction : "",
		buildArrows : false,
		arrowNextClass: ".next",
		arrowPrevClass : ".prev",
		nbElmVisibles : 0,
		timerTab2Tab : 1,
		relClassForTimer : ".blocPub"
	}