/*
	ED - 12.07.2006
	
	Script pour gerer les menus deroulants structures comme des listes <ul> imbriquees.
	Les listes <ul> parentes (ou le menu de plus haut niveau) doient avoir une classe dont
	la valeur est definie ici par la variable : classeMenuDeroulant
	
	initMenus() parcour le document a la recherche des listes <ul> possedant cette classe
	et attache des gestionnaires d evenements aux <li> qui contiennent des sous menus
	pour les faire apparaitre et disparaitre au survol
	
	Attention: la fonction addEvent() definie dans defaut.js est requise !

*/
var classeMenuDeroulant = /menu_deroulant/;

/*
	Attache les gestionnaires d evenements aux lis qui ont des sous menus
*/
function initMenus() {
	var menu, menus, lis, liSousMenus;
	if(document.getElementById && document.getElementsByTagName){
			menus = document.getElementsByTagName("ul");
			if(menus.length > 0 ){
				for(var j=0; j<menus.length; j++){
					if(menus[j].className.match(classeMenuDeroulant)){
						menu = menus[j];
						lis = menu.getElementsByTagName("li");
						for(var i=0; i<lis.length; i++){
							liSousMenus = lis[i].getElementsByTagName("ul");
							if(liSousMenus.length > 0){
								// a un sous-menu
								addEvent(lis[i],"mouseover", montrePremierSousMenu);
								addEvent(lis[i],"focus", montrePremierSousMenu);
								addEvent(lis[i],"mouseout", cachePremierSousMenu);	
								addEvent(lis[i],"blur", cachePremierSousMenu);
							}
						}
					} 
				}
			}
	}
}

/*
	Montre et cache les sous menus
*/
function montrePremierSousMenu(){
	if(this.getElementsByTagName("ul")[0].className!='smenuthema') {
		this.getElementsByTagName("ul")[0].style.display = "block";
		var sel = $("BODY").find("SELECT");sel.attr('disabled', true);	
		$(".hideonmenu").hide();
	}
	/*this.style.backgroundColor = "#EDF4F9";*/
}

function cachePremierSousMenu(){
	if(this.getElementsByTagName("ul")[0].className!='smenuthema') {
		this.getElementsByTagName("ul")[0].style.display = "none";
		var sel = $("BODY").find("SELECT");sel.attr('disabled', false);	
		$(".hideonmenu").show();
	}
	/*this.style.backgroundColor = "#fff";*/
}

/*
	Appelle initMenus() au chargement de la page
*/
addEvent(window,"load", initMenus);

$(document).ready(function(){
	
	/* Left navigation */
	$(".menuthema a").click(function(){
		if($(this).next().is('ul')) {
			$(this).next().toggle();
			return false;
		}
		
	});
});

$(document).ready(function(){ 
  $("a.targetblank").attr("target", "_blank");
});

function depublish(){
	try{
	$("#DEPUBLISH").attr("value", "1"); 
	$("#RECHERCHE_WEB").submit();
	}catch(e){alert(e)}
}


$(document).ready(function(){
	$("form").each(function(i) {
		if($(this).attr('name') == 'abonnement_newsletter') {
			$(this).find("LABEL").css("width","auto");
			$(this).find("SPAN").css("width","auto");
		}
	});
	
	agenda_defilant();
});

var nbItems = 0;
var minItems = 0;
var itemAgenda = 1;
var agendaTime = 5000;
var agendaTimer = null;
var slideTime = 10;
var slideTimer = null;
var hAgenda = 0;

function agenda_defilant()
{	
	//on détermine le nbre d'items minimum
	if($('#agenda-defilant').attr('class') == 'agenda-defilant-3') minItems = 3;
	else if($('#agenda-defilant').attr('class') == 'agenda-defilant-4') minItems = 4;
	else if($('#agenda-defilant').attr('class') == 'agenda-defilant-5') minItems = 5;	
	
	//on ajoute une classe pour identifier chaque item
	$('#agenda-defilant').children('ul').children('li.item').each(function(i)
	{
		$(this).addClass("item_"+(i+1));
	});
	
	//on calcule le nbre d'items dans l'agenda
	nbItems = $("#agenda-defilant ul li.item").length;
	
	//on redimensionne le conteneur
	if (minItems > nbItems) var max = nbItems;
	else var max = minItems;
	
	for (var i=1; i<=max; i++)
	{
		hAgenda += $("#agenda-defilant ul li.item_"+i).height();
	}
	$("#agenda-defilant").css({'height':hAgenda+'px'});
	
	//on lance le slide s'il y a assez d'items
	if (nbItems > minItems)
	{
		if (agendaTimer) clearInterval(agendaTimer);
		agendaTimer = setInterval(slideAgenda, agendaTime);
	}
	
	function slideAgenda()
	{
		var posMin = parseInt($("#agenda-defilant ul").css('top'));
		var posMax = posMin - $("#agenda-defilant ul li.item_"+itemAgenda).height();
		
		if (slideTimer) clearInterval(slideTimer);
		slideTimer = setInterval('slideItem('+posMax+')', slideTime);
	}	
}

function slideItem(posMax)
{
	var posCurrent = parseInt($("#agenda-defilant ul").css('top')) - 1;
	
	if (posCurrent >= posMax)
	{
		$("#agenda-defilant ul").css({'top':posCurrent+'px'});
	}
	else
	{
		nbItems++;
		
		var item = $("#agenda-defilant ul li.item_"+itemAgenda).clone().appendTo($("#agenda-defilant ul"));
		item.removeClass("item_"+itemAgenda).addClass("item_"+nbItems);
		
		itemAgenda++;
		
		clearInterval(slideTimer);
	}
}


