//Déclaration de la variable contenant la réponse
var xmlDocument;
var safari=false;

//using Safari ? Mind if we lol ?
if (navigator.userAgent.match("(S|s)afari") || navigator.userAgent.match("(O|o)pera")) {
	safari=true;
}
//Firefox
if(document.implementation.createDocument) {
	xmlDocument = document.implementation.createDocument('', '', null);
	//listener sur le chargement du fichier XML
	xmlDocument.addEventListener('load', loadHandler, false);
}
//IE
else {
	//création d'un objet ActiveX
	xmlDocument = new ActiveXObject('Microsoft.XMLDOM');
}

//Fonction pour Firefox - elle est appelée quand le fichier XML est chargé
function loadHandler () {
	xmlProcessor(this);
}

function loadXMLDoc(url) {
	xmlDocument.async = "false";
	//Utile seulement pour IE
	xmlDocument.onreadystatechange=state_Change;
	if (!safari) {
		xmlDocument.load(url);
	}
	else {
		if (window.XMLHttpRequest)
		{
			xmlhttpXMLCatalogue = new XMLHttpRequest();
			xmlhttpXMLCatalogue.onreadystatechange = process_Safari;
			xmlhttpXMLCatalogue.open("GET", url + "?randomvar=" + Math.random(),true); 
			xmlhttpXMLCatalogue.send(null);
		}
	}
}

function process_Safari() {
	if (xmlhttpXMLCatalogue.readyState == 4)
	{
		if (xmlhttpXMLCatalogue.status != 200) 
		{
			alert("Il y a eu un problème lors de la connexion:\n"+xmlhttpXMLCatalogue.statusText);
		}
		else {
			var content = xmlhttpXMLCatalogue.responseText;
			var parser = new DOMParser();
			xmlDocument = parser.parseFromString(content, "text/xml"); 
			xmlProcessor(xmlDocument);
		}
	}
}

function state_Change() {
	//readyState == 4 seulement si le fichier est lu correctement (pas d'erreurs dans le XML)
	if (xmlDocument.readyState==4) {
		xmlProcessor(xmlDocument);	
	}
}

/*------------------------------------------------------------*/
/*    FIN fonctions personalisées
/*------------------------------------------------------------*/

//On appelle la fonction avec la réponse XML en paramètre
function xmlProcessor(catalogue) {
	//on démarre notre nav perso
	var contenuNav = "<div id=\"cadreMenu\">\n";
	// ajout bt accueil
	//var contenuNav = "<div class=\"nav_accueil\"><a href=\"liste_rayons.cfm?code_lg=lg_fr\">ACCUEIL BOUTIQUE</a></div>\n";
	//liste des rayons
	rayons = catalogue.documentElement.childNodes;
	//on boucle sur les nodes
	for (var i = 0; i < rayons.length; i++) {
		
		//pour firefox : verifi si le noeux n'est pas vide ( saut de ligne du xml )
		if ( rayons.item(i).nodeType == 1  ) {
			contenuNav += "<div class=\"cadreLienRayon\">\n";
			
			//pour s'assurer qu'on est bien sur une node rayon
			if (rayons.item(i).tagName == "rayon") {
				
				//formatage du rayon
				//contenuNav += "<div class=\"nav_rayon\">\n";
				//on récupère les attributs du rayon qu'on stock dans une variable à afficher
				//contenuNav += "<a href=\"" + rayons.item(i).getAttribute("url") + "\" class=\"LienRayon\">" + rayons.item(i).getAttribute("nom") + "</a>\n";
				//formatage fin de cellule rayon
				//contenuNav += "</div>\n";
				
				//liste des gammes de ce rayon
				gammes = rayons.item(i).childNodes;
				
				//recherche dans url le rayon sélectionné
				//var partie_url=window.location.search; 
				
			if(typeof(urlOrigine)=='undefined') {
			    var urlOrigine=document.location.href;
			} 

			var partie_url=urlOrigine;
			// fin modification compatibilite URL Rewriting				
				
				
				partie_url=partie_url.substring(1); 
				partie_url=partie_url+"&"; 
				if(partie_url.indexOf("num",0)!=-1)
				{ 
					// recup num rayon
					var num = rayons.item(i).getAttribute("num");
					//contenuNav+="toto";				
					var position_parametre=partie_url.indexOf("num",0); 
					var position_signe=partie_url.indexOf("=",position_parametre); 
					var position_fin=partie_url.indexOf("&",position_parametre); 
					valeur_parametre=partie_url.substring(position_signe+1,position_fin);
					
					//si le rayon et la gamme existe on affiche le tout passe sous ff pas sous ie
					//soluce mettre gammes.length en comm  >> && (gammes.length > 0) )
					if(num == valeur_parametre) 
					{
						var numrayon = rayons.item(i).getAttribute("num");
						var couleurDiv = "";
						if (numrayon == 1)
							couleurDiv = "9E081A";
						if (numrayon == 11)
							couleurDiv = "0E90B0";
						if (numrayon == 51)
							couleurDiv = "7EAC29";
						if (numrayon == 31)
							couleurDiv = "D5AE0E";
						if (numrayon == 61)
							couleurDiv = "006CAA";
						if (numrayon == 21)
							couleurDiv = "DA490D";
						if (numrayon == 71)
							couleurDiv = "115D53";
						if (numrayon == 101)							
							couleurDiv = "CAFF27";
						if (numrayon == 81)							
							couleurDiv = "A63FA6";
						if (numrayon == 91)							
							couleurDiv = "EA6D05";														
														
						//formatage du rayon
						contenuNav += "<div class=\"nav_rayon\" style=\"background:#"+ couleurDiv +";margin:4px 0 0 0;padding:17px 5px 15px 15px;color:#fff;font:bold 11px verdana;\">\n";
						//on récupère les attributs du rayon qu'on stock dans une variable à afficher
						contenuNav += "<span style='display:block;margin:0 0 15px 0;font:bold 14px verdana;'>" + rayons.item(i).getAttribute("nom") + "</span>\n";
						
						//on boucle sur les gammes
						for (var j = 0; j < gammes.length; j++) {
							//pour s'assurer qu'on est bien sur une node gamme
							if (gammes.item(j).tagName == "gamme") {
								//formatage de la gamme
								contenuNav += "<div style=\"margin:0 0 8px 0;\">";
								//on récupère les attributs du rayon qu'on stock dans une variable à afficher
								contenuNav += "<a href=\"" + gammes.item(j).getAttribute("url") + "\" style=\"text-decoration:none;color:#fff;font:bold 10px verdana;\">" + "- " + gammes.item(j).getAttribute("nom") + "</a>\n";
								//formatage fin de cellule gamme
								contenuNav += "</div>\n";
							}
						}
						//formatage fin de cellule rayon
						contenuNav += "</div>\n";
					// ajout trait separ fin listage gamme
					//contenuNav += "<div class=\"nav_intercal\"><img src=\"gen_img_2006/trans.gif\" height=\"1\" /></div>";
					}
				}
			}
		}
	}
	contenuNav += "</div>\n";
	//on affiche notre variable de nav
	document.getElementById("menu").innerHTML = contenuNav;
	alert(getElementById("menu").innerHTML);
}
//on charge le fichier catalogue.xml qui se situe dans le répertoire boutique (et boutique_us)
loadXMLDoc("../boutique/architecture_catalogue.xml");

