var timeout; //ne pas toucher, c'est pour déclarer la variable
var agt = navigator.userAgent.toLowerCase();
var isMac = (agt.indexOf('mac') != -1);
var isOpera = (agt.indexOf("opera") != -1);
var IEver = parseFloat(agt.substring(agt.indexOf('msie ') + 5));
var isIE = ((agt.indexOf('msie')!=-1 && !isOpera && (agt.indexOf('webtv')==-1)) && !isMac);
var isIE5win = (isIE && IEver == 5);
var isIE5mac = ((agt.indexOf("msie") != -1) && isMac);

var blnOk=true;

// onScroll pour Internet Explorer, le position:fixed fait ce boulot pour les autres navigateurs
// qui respectent les normes CSS...
window.onscroll = function()
{
	if (blnOk && suivre_le_scroll && (isIE || isIE5mac))
	{
		//for(i=1;i<=nbmenu;i++) {
		for(i=nbmenu;i>=1;i--) {
			if (!vertical) {
				document.getElementById("menu"+i).style.top = document.body.scrollTop + top_menu + "px";
				if (document.getElementById("ssmenu"+i))//undefined
					document.getElementById("ssmenu"+i).style.top = document.body.scrollTop + top_ssmenu + "px";
			} else {
				document.getElementById("menu"+i).style.top = document.body.scrollTop
							+(((i-1)*(hauteur_menu+espace_entre_menus))+1+top_menu)+"px";
				if (document.getElementById("ssmenu"+i))//undefined
					document.getElementById("ssmenu"+i).style.top = document.body.scrollTop
							+(((i-1)*(hauteur_menu+espace_entre_menus))+1+top_menu)+"px";
					
			}
		}
	}
}

function preChargement()
{
	if (document.getElementById("conteneurmenu"))
	{
		document.getElementById("conteneurmenu").style.visibility="hidden";
		//IE5 mac a un bug : quand un texte est dans un élément de style float, il n'apparait pas.
		if (isIE5mac)
		{
			document.getElementById("conteneurmenu").style="";
		}
	}
}

function Chargement() {
	
	if(document.body.style.backgroundColor!="") { blnOk=false; }
	if(document.body.style.color!="") { blnOk=false; }
	if(document.body.style.marginTop!="") { blnOk=false; }
	if(!document.getElementById) { blnOk=false; }

	if(blnOk)
	{
		trimespaces();
		
			with(document.body.style) {
				if (!vertical) marginTop=marge_haut_page + "px"; else marginLeft=marge_gauche_page + "px";
			}
		
		if (centrer_menu) {
			if (!vertical) {
				var largeur_totale = (largeur_menu * nbmenu) + (espace_entre_menus * (nbmenu-1));
				var largeur_fenetre = (isIE?document.body.clientWidth:window.innerWidth);
				left_menu = (largeur_fenetre - largeur_totale)/2;
			} else {
				var hauteur_fenetre = (isIE?document.body.clientHeight:window.innerHeight);
				var hauteur_totale = (hauteur_menu * nbmenu) + (espace_entre_menus * (nbmenu-1));
				top_menu = (hauteur_fenetre - hauteur_totale)/2;
			}
		}
		
		//for(i=1;i<=nbmenu;i++) {
		for(i=nbmenu;i>=1;i--) {
			if (document.getElementById("menu"+i))//undefined
			{
			with(document.getElementById("menu"+i).style) {
				if (!vertical) {
					top=top_menu+"px";
					// Modifié par C.Seguin, Mairie de Bonneuil, le 25/8
					// Objet : suppression de la marge de 1 px à gauche du menu
					// Code d'origine :
					// marginLeft=(((i-1)*(largeur_menu+espace_entre_menus))+1+left_menu)+"px";
					marginLeft=(((i-1)*(largeur_menu+espace_entre_menus))+left_menu)+"px";
					// Fin de la zone modifiée
				} else {
					top=(((i-1)*(hauteur_menu+espace_entre_menus))+1+top_menu)+"px";
					marginLeft=left_menu+"px";
				}
				if (!suivre_le_scroll || isIE || isIE5mac)
					position="absolute";
				else position="fixed";
				width=largeur_menu+"px";
				//if (vertical) height=hauteur_menu+"px";
//				margin="0";
				zIndex="2";
			}
			}
		}

		//for(i=1;i<=nbmenu;i++) {
		for(i=nbmenu;i>=1;i--) {
			if (document.getElementById("ssmenu"+i))//undefined
			{
				with(document.getElementById("ssmenu"+i).style) {
					if (!suivre_le_scroll || isIE || isIE5mac)
						position="absolute";
					else position="fixed";
					if (!vertical) {
						top=top_ssmenu+"px";
						// Modifié par C.Seguin : suppression du pixel de décalage
						// marginLeft=(((i-1)*(largeur_menu+espace_entre_menus))+1+left_menu)+"px";
						marginLeft=(((i-1)*(largeur_menu+espace_entre_menus))-1+left_menu)+"px";
						// Fin zone modifiée
					} else {
						marginLeft=left_ssmenu+"px";
						// Modifié par C.Seguin : en mode vertical, suppression du décalage vertical
						// entre le bouton et son sous-menu
						// top=(((i-1)*(hauteur_menu+espace_entre_menus))+1+top_menu+3)+"px";
						top=(((i-1)*(hauteur_menu+espace_entre_menus))+top_menu)+"px";
					}
					if (isIE||isOpera||isIE5mac)
						width = largeur_sous_menu+(largeur_sous_menu!="auto"?"px":"");
					else width = "auto";
//					margin="0";
					zIndex="100";
				}
			}
		}

		CacherMenus();
	}

	// comme on a évité le clignotement, maintenant on fait apparaître le menu ;-)
	document.getElementById("conteneurmenu").style.visibility = "visible";
}


function MontrerMenu(strMenu) {
	if(blnOk) {
		AnnulerCacher();
		CacherMenus();
		if (document.getElementById(strMenu))
			with (document.getElementById(strMenu).style)
				visibility="visible";
				
		if (document.getElementById(strMenu.replace(/ss/,"")))//undefined
		{
			with (document.getElementById(strMenu.replace(/ss/,"")))
			{
				className=className + "ov";
			}		
		}
	}
	if(masquer_select)SelectVisible("hidden",document.getElementsByTagName('select'));
}

function CacherDelai() {
	if (blnOk) {
		timeout = setTimeout('CacherMenus()',delai);
	}
}
function AnnulerCacher() {
	if (blnOk && timeout) {
		clearTimeout(timeout);
	}
}
function CacherMenus() {
	if(blnOk) {
		//for(i=1;i<=nbmenu;i++) {
		for(i=nbmenu;i>=1;i--) {
			if (document.getElementById("ssmenu"+i))
				with(document.getElementById("ssmenu"+i).style)
					visibility="hidden";

			if (document.getElementById("menu"+i))//undefined
			{
				with (document.getElementById("menu"+i))
				{
					className=className.replace(/ov/,"");
				}		
			}
		}
	}
	if(masquer_select)SelectVisible("visible",document.getElementsByTagName('select'));
}

function trimespaces() {
	//Contourne un bug d'IE5/win... il ne capte pas bien les css pour les <li>, donc on les vire !
	if(blnOk&&isIE5win) {
		//for(i=1;i<=nbmenu;i++) {
		for(i=nbmenu;i>=1;i--) {
			if (document.getElementById("ssmenu"+i))//undefined
				with(document.getElementById("ssmenu"+i))
					innerHTML = innerHTML.replace(/<LI>|<\/LI>/g,"");
		}
	}
}

function SelectVisible(v,elem) {
	if (blnOk && (isIE||isIE5win))
		for (var i=0;i<elem.length;i++) elem[i].style.visibility=v;
}




