var vertical = false;
var nbmenu = 5;	// nb entrées de menu
var centrer_menu = true;
var largeur_menu = 110; 
var hauteur_menu = 23;
var largeur_sous_menu = 140;
var largeur_auto_ssmenu = false;
var espace_entre_menus = 0;
var top_menu = 144;  //distance au top page
var top_ssmenu = top_menu + 27;	 // distance au top page
var left_menu = 0;	/* Position gauche du menu, en px. */
var left_ssmenu = largeur_menu+2;
var delai = 100; // en milliseconde
var marge_en_haut_de_page = 0;
var marge_a_gauche_de_la_page = largeur_menu + 10;
var suivre_le_scroll=false;
var cacher_les_select=true;	// pour ie

// --- globals ---
var timeout; 
var agt = navigator.userAgent.toLowerCase();
var isMac = (agt.indexOf('mac') != -1);
var isOpera = (agt.indexOf("opera") != -1);
var IEver = parseInt(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;

var reg = new RegExp("px", "g");

function writeMenu()
{
	document.write("<p id=\"menu1\" class=\"menu\"	onmouseover=\"MontrerMenu('ssmenu1');\" onmouseout=\"CacherDelai();\">");
	document.write("<a href=\"spam-virus-protection-filtering-services.html\" onmouseover=\"MontrerMenu('ssmenu1');\" onfocus=\"MontrerMenu('ssmenu1');\">Home<span>&nbsp;:<\/span><\/a><\/p>");

    document.write("<p id=\"menu2\" class=\"menu\" onmouseout=\"CacherDelai();\" onmouseover=\"MontrerMenu('ssmenu2');\"><a href=\"#\" onfocus=\"MontrerMenu('ssmenu2');\">Technology<span>&nbsp;:<\/span><\/a><\/p>");

    document.write("<ul id=\"ssmenu2\" class=\"ssmenu\" onmouseover=\"AnnulerCacher();\" onmouseout=\"CacherDelai();\" onfocus=\"AnnulerCacher();\" onblur=\"CacherDelai();\">");
	document.write("<li><a href=\"spam-filtering-overview.html\"><img src=\"images\/vide.gif\" align=\"absmiddle\" alt=\"\">Overview <\/a><\/li>");
	document.write("<li><a href=\"email-filtering-architecture.html\"><img src=\"images\/vide.gif\" align=\"absmiddle\" alt=\"\">Architecture <\/a><\/li>");
//	document.write("<li><a href=\"anti-spam.html\"><img src=\"images\/vide.gif\" align=\"absmiddle\" alt=\"\">Anti-Spam<\/a><\/li>");
	document.write("<li><a href=\"spam-filtering-faq.html\"><img src=\"images\/faq.gif\" align=\"absmiddle\" alt=\"\">FAQ <\/a><\/li>");
    document.write("<\/ul>");

    document.write("<p id=\"menu3\" class=\"menu\" onmouseover=\"MontrerMenu('ssmenu3');\" onmouseout=\"CacherDelai();\"><a href=\"#\" onFocus=\"MontrerMenu('ssmenu3');\">Products<span>&nbsp;:<\/span><\/a><\/p>");

    document.write("<ul id=\"ssmenu3\" class=\"ssmenu\" onmouseover=\"AnnulerCacher();\" onmouseout=\"CacherDelai();\" onFocus=\"AnnulerCacher();\" onblur=\"CacherDelai();\">");
	document.write("<li><a href=\"managed-email-filtering-services.html\"><img src=\"images\/vide.gif\" align=\"absmiddle\" alt=\"\" \/>Managed Services <\/a><\/li>");
	document.write("<li><a href=\"spam-filtering-appliance.html\"><img src=\"images\/vide.gif\" align=\"absmiddle\" alt=\"\" \/>NX Box <\/a><\/li>");
	document.write("<li><a href=\"antispam-key-benefits-nuxo.html\"><img src=\"images\/vide.gif\" align=\"absmiddle\" alt=\"\" \/>Key Benefits <\/a><\/li>");
	document.write("<li><a href=\"free-trial-spam-filtering.html\"><img src=\"images\/vide.gif\" align=\"absmiddle\" alt=\"\" \/>Getting Started <\/a><\/li>");
//	document.write("<li><a href=\"testimonials.html\"><img src=\"images\/vide.gif\" align=\"absmiddle\" alt=\"\" \/>Testimonials <\/a><\/li>");
    document.write("<\/ul>");

	document.write("<p id=\"menu4\" class=\"menu\" onmouseover=\"MontrerMenu('ssmenu4');\" onmouseout=\"CacherDelai();\"><a href=\"#\" onFocus=\"MontrerMenu('ssmenu4');\">Company<span>&nbsp;:<\/span><\/a><\/p>");
	document.write("<ul id=\"ssmenu4\" class=\"ssmenu\" onmouseover=\"AnnulerCacher();\" onmouseout=\"CacherDelai();\" onFocus=\"AnnulerCacher();\" onblur=\"CacherDelai();\">");
	document.write("<li><a href=\"nuxo-technologies-overview.html\"><img src=\"images\/vide.gif\" align=\"absmiddle\" alt=\"\" \/>Overview <\/a><\/li>");
//	document.write("<li><a href=\"team.html\"><img src=\"images\/vide.gif\" align=\"absmiddle\" alt=\"\" \/>Team <\/a><\/li>");
	document.write("<li><a href=\"nuxo-technologies-jobs.html\"><img src=\"images\/vide.gif\" align=\"absmiddle\" alt=\"\" \/>Jobs <\/a><\/li>");
//	document.write("<li><a href=\"PressReleases.htm\"><img src=\"images\/vide.gif\" align=\"absmiddle\" alt=\"\" \/>Press Releases <\/a><\/li>");
	document.write("<\/ul>");


        document.write("<p id=\"menu5\" class=\"menu\"  onmouseover=\"MontrerMenu('ssmenu5');\" onmouseout=\"CacherDelai();\">");
        document.write("<a href=\"nuxo-partners-reseller-referral.html\" onmouseover=\"MontrerMenu('ssmenu5');\" onfocus=\"MontrerMenu('ssmenu5');\">Partners<span>&nbsp;:<\/span><\/a>");


	document.write("<p id=\"menu6\" class=\"menu\"	onmouseover=\"MontrerMenu('ssmenu6');\" onmouseout=\"CacherDelai();\">");
	document.write("<a href=\"nuxo-technologies-contact.html\" onmouseover=\"MontrerMenu('ssmenu5');\" onfocus=\"MontrerMenu('ssmenu5');\">Contact Us<span>&nbsp;:<\/span><\/a>");
    document.write("<\/p><\/div>");

	nbmenu = 6; 
	Chargement();
}
// onScroll pour Internet Explorer only
window.onscroll = function()
{
	if (blnOk && suivre_le_scroll && (isIE || isIE5mac))
	{
		if (isIE5mac) document.getElementById("conteneurmenu").style.visibility="hidden";
		var cumul=0;
		for(i=1;i<=nbmenu;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)*espace_entre_menus)+cumul+1+top_menu)+"px";
				if (document.getElementById("ssmenu"+i))//undefined
					document.getElementById("ssmenu"+i).style.top = document.body.scrollTop
							+(((i-1)*espace_entre_menus)+cumul+1+top_menu)+"px";
				cumul += isFinite(hauteur_menu)?hauteur_menu:hauteur_menu[i-1];
			}
		}
		if (isIE5mac) document.getElementById("conteneurmenu").style.visibility="visible";
	}
}

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 (!blnOk) {
		if(document.body.style.backgroundColor!="") { blnOk=false; }
		if(document.body.style.color!="") { blnOk=false; }
		if(document.body.style.marginTop!="") { blnOk=false; }
		if(document.getElementById) {
			with(document.getElementById("conteneurmenu").style) {
				if(position!="" || top!="" || left!=""
						|| width!="" || height!="" || zIndex!=""
						|| margin!="" || visibility!="") {
					blnOk=false;
				}
			}
		}
		else{
			blnOk=false;
		}
	}

	if(blnOk)
	{
		document.getElementById("conteneurmenu").style.visibility="hidden";
		
		trimespaces();
		
		with(document.body.style) {
			if (!vertical) marginTop=marge_en_haut_de_page+"px";
			else		   marginLeft=marge_a_gauche_de_la_page+"px";
		}
		
		positionne();
		CacherMenus();
	}

	// comme on a évité le clignotement, maintenant on fait apparaître le menu ;-)
	document.getElementById("conteneurmenu").style.visibility='';
}
window.onresize = Chargement;

/*
 * Place les éléments du menu correctement, au chargement, au scroll, au redimensionnement
 * de la fenêtre
 */
function positionne() 
{
	var largeur_fenetre = (isIE?document.body.clientWidth:window.innerWidth);
	var hauteur_fenetre = (isIE?document.body.clientHeight:window.innerHeight);
	if (centrer_menu) {
		if (!vertical) {
			var largeur_totale = espace_entre_menus * (nbmenu-1);
			if (isFinite(largeur_menu))
				largeur_totale += largeur_menu * nbmenu;
			else {
				for (i = 1; i <= nbmenu; i++)
					largeur_totale += largeur_menu[i-1];
			}
			left_menu = (largeur_fenetre - largeur_totale)/2;
		} else {
			var hauteur_totale = espace_entre_menus * (nbmenu-1);
			if (isFinite(hauteur_menu))
				hauteur_totale += hauteur_menu * nbmenu;
			else {
				for (i = 1; i <= nbmenu; i++)
					hauteur_totale += hauteur_menu[i-1];
			}
			top_menu = (hauteur_fenetre - hauteur_totale)/2;
		}
	}
	
	//Menus
	var cumul = 0;
	for(i=1;i<=nbmenu;i++) {
		with(document.getElementById("menu"+i).style) {
			if (!vertical) {
				top=top_menu+"px";
				//left=(((i-1)*(largeur_menu+espace_entre_menus))+1+left_menu)+"px";
				left=(((i-1)*espace_entre_menus)+cumul+1+left_menu)+"px";
			} else {
				//top=(((i-1)*(hauteur_menu+espace_entre_menus))+1+top_menu)+"px";
				top=(((i-1)*espace_entre_menus)+cumul+1+top_menu)+"px";
				left=left_menu+"px";
			}
			if (!suivre_le_scroll || isIE || isIE5mac)
				position="absolute";
			else position="fixed";
			//if (vertical) height=hauteur_menu+"px";
			margin="0";
			zIndex="2";
			if (vertical || isFinite(largeur_menu))
				width=largeur_menu+"px";
			else
				width=largeur_menu[i-1]+"px";
			if ((!vertical && isFinite(largeur_menu)) || (vertical && isFinite(hauteur_menu))) {
				cumul += (!vertical?largeur_menu:hauteur_menu);
			}
			else {
				cumul += (!vertical?largeur_menu[i-1]:hauteur_menu[i-1]);
				if (vertical) height=hauteur_menu[i-1]+"px";
			}
		}
	}
	
	//Sous-menus
	cumul = 0;
	for(i=1;i<=nbmenu;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";
					left=(((i-1)*espace_entre_menus)+cumul+1+left_menu)+"px";
				} 
				else 
				{
					left=left_ssmenu+"px";
					top=(((i-1)*espace_entre_menus)+cumul+1+top_menu)+"px";
				}
				if (isIE || isOpera || isIE5mac || !largeur_auto_ssmenu) {
					if (isFinite(largeur_sous_menu))
						width = largeur_sous_menu+(largeur_sous_menu!="auto"?"px":"");
					else
						width = largeur_sous_menu[i-1]+(largeur_sous_menu[i-1]!="auto"?"px":"");
				}
				else width = "auto";
				if (!vertical && !isIE5mac) {
					//repositionnement si déborde à droite
					if ((width != "auto")
						&& ((left.replace(reg,'').valueOf()*1 + width.replace(reg,'').valueOf()*1) > largeur_fenetre))
						left = (largeur_fenetre-width.replace(reg,'').valueOf())+"px";
				}
				margin="0";
				zIndex="3";
			}
		}
		if ((!vertical && isFinite(largeur_menu)) || (vertical && isFinite(hauteur_menu))) {
			cumul += (!vertical?largeur_menu:hauteur_menu);
		}
		else {
			cumul += (!vertical?largeur_menu[i-1]:hauteur_menu[i-1]);
		}
	}
}


function MontrerMenu(strMenu) 
{
	if(blnOk) 
	{
		AnnulerCacher();
		CacherMenus();
		if (document.getElementById(strMenu))//undefined
			with (document.getElementById(strMenu).style)
				visibility="visible";
	}
	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++) {
			if (document.getElementById("ssmenu"+i))//undefined
				with(document.getElementById("ssmenu"+i).style)
					visibility="hidden";
		}
	}
	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++) {
			if (document.getElementById("ssmenu"+i))//undefined
				with(document.getElementById("ssmenu"+i))
					innerHTML = innerHTML.replace(/<LI>|<\/LI>/g,"");
		}
	}
}

function SelectVisible(v,elem) 
{
	if (blnOk && cacher_les_select && (isIE||isIE5win))
		for (var i=0;i<elem.length;i++) elem[i].style.visibility=v;
}
