var defaut = 0; 

liste_univers = new Array(7);
univers = new Array(7);

getParam = new Array();
if(typeof(urlOrigine)=='undefined') {
	var urlOrigine=document.location.href;
}
getURL_param2(urlOrigine);


// gerer le cas si url a des param mais pas de param num
if(getParam["num"] == undefined){
	getParam["num"] = "99999";
	defaut = 251;
}

// liste des numeros de rayon appartenant a cet univers
univers[0]="251";
univers[1]="8";
univers[2]="1";
univers[3]="11";
univers[4]="281";
univers[5]="291";
univers[6]="301";

//DÃ©claration de la variable contenant la rÃ©pon
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 Active
        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);
        }
}



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

// code pour afficher les boites sur liste produits
function afficherGamme(nomdiv) {
	
	// Vérifie si le div est masqué
	if (document.getElementById(nomdiv).style.display=='none') 
	{	// Si oui on affiche le div
		document.getElementById(nomdiv).style.display='block'; 
	} else {
		// sinon on le masque
		document.getElementById(nomdiv).style.display='none'
	}
}

function fondRayon(fondImgRayon)
{
	//alert(fondImgRayon.style.backgroundImage);
	if(fondImgRayon.style.backgroundImage == "")
	{
	fondImgRayon.style.color='#666';
	fondImgRayon.style.fontWeight='bold';
	fondImgRayon.style.textDecoration='none';	
	fondImgRayon.style.backgroundColor='#E8E8E8';
	}
	else{
	fondImgRayon.style.color='';
	}

}


function fondGamme(fondImgGamme){
	if(fondImgGamme.style.backgroundColor =="")
	{
		fondImgGamme.style.color='#FF33FF';
	}
	else
	{
		fondImgGamme.style.backgroundColor ='';
	}

}

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

//On appelle la fonction avec la rÃ©ponse XML en paramÃ¨tre
function xmlProcessor(catalogue) {

        rayons = catalogue.documentElement.childNodes;
        var contenu="<dl id=\"cadreMenu\">\n";

        for(var k = 0; k < univers.length; k++){
                
		//alert(titre_univers[k]);
           //contenu += "<li class=\""\"></li>\n";
              
			  var liste_rayon = univers[k].split(",");
                
				for(var rayon = 0; rayon < liste_rayon.length; rayon++){
                       
					   for (var i = 0; i < rayons.length; i++) {
                                
								if (rayons.item(i).tagName == "rayon") {
                                        
										if(rayons.item(i).getAttribute("num") == liste_rayon[rayon]){
											
											   //alert(rayons.item(i).getAttribute("nom"));
											   //id=\"lien"+rayons.item(i).getAttribute("num")+"\" 
											   //fondRayon(this);
                                                contenu += "<dt class=\"cadreLienRayon\">";
												contenu +="<a href=\"javascript:void(0);\" class=\"lienRayon\" onclick=\"afficherGamme (" + rayons.item(i).getAttribute("num") + ") ; fondRayon(this) ; \" id=\"lienRayonsGauche"+rayons.item(i).getAttribute("num")+"\">" + rayons.item(i).getAttribute("nom") +"</a>";
												contenu +="</dt>\n";
		
											contenu += "<dd  class=\"cadreMenuGamme\" id=\"" + rayons.item(i).getAttribute("num") + "\" style='display:none'>\n";												
											
											if (  getParam["num"] == rayons.item(i).getAttribute("num")) {
												contenu += "<dd  class=\"cadreMenuGamme\" id=\"" + rayons.item(i).getAttribute("num") + "\" style='display:block'>\n";
												
											} 
											
												//alert(getParam["num"] +"--"+ rayons.item(i).getAttribute("num"));
                                                gammes = rayons.item(i).childNodes;
                                                for (var j = 0; j < gammes.length; j++) {
                                                        if (gammes.item(j).tagName == "gamme") {
                                                                //alert(gammes.item(j).getAttribute("nom"));
    																contenu += "<a href=\"" + gammes.item(j).getAttribute("url") + "\" class=\"lienGamme\" id=\"lienGammes"+gammes.item(j).getAttribute("num")+"\" onclick=\"fondGamme(this) ; \">" + gammes.item(j).getAttribute("nom") + "</a>\n";
                                                       	}
                                                }
												
												//fin du cadre gammes + contener rayon
												contenu += "</dd>\n";

                                        }//fin if rayon (num)
										
				                  } //fin if rayon item
								
								
                        }
                }


        }


        contenu += "</dl>\n";
        //on affiche notre variable de nav
        document.getElementById("menu").innerHTML = contenu;
		//alert(document.getElementById("menu").innerHTML);
       

	// garder le feedback sur gammes et articles
	//le num permet de le garder par rapport au rayon en cours et le type permet de le gérer par rapport a la gamme selectionné
	if(defaut != 1){
		fondRayon(document.getElementById('lienRayonsGauche'+getParam["num"]));	
		fondGamme(document.getElementById('lienGammes'+getParam["type"]));
		afficherGamme(getParam["num"]);
		}
}


function getUniversFromRayon(num){
        mon_univers = -1;
        nb_univers = liste_univers.length;
        for(var k = 0; k < nb_univers; k++){
                var liste_rayon = univers[k].split(",");
                for(var rayon = 0; rayon < liste_rayon.length; rayon++){
                        if(liste_rayon[rayon] == num){
                                mon_univers = k;
                                break;
                        }
                }
        }
        return mon_univers;
}


function getUniversFromGamme(catalogue, type){
        //parcours de tous le fichier xml
        //liste des rayons
        rayons = catalogue.documentElement.childNodes;
        //on boucle sur les nodes
        for (var i = 0; i < rayons.length; i++) {
                //pour s'assurer qu'on est bien sur une node rayon
                if (rayons.item(i).tagName == "rayon") {
                        //on boucle sur les gammes
                        gammes = rayons.item(i).childNodes;
                        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") {
                                        //alert(gammes.item(j).getAttribute("num"));
                                        if(gammes.item(j).getAttribute("num") == type){
                                                alert(type+"=>"+getUniversFromRayon(rayons.item(i).getAttribute("num")));
                                        }
                                }
                        }
                }
        }


}


function getRayonFromGamme(catalogue, type){
        mon_rayon = -1;
        //parcours de tous le fichier xml
        //liste des rayons
        rayons = catalogue.documentElement.childNodes;
        //on boucle sur les nodes
        for (var i = 0; i < rayons.length; i++) {
                //pour s'assurer qu'on est bien sur une node rayon
                if (rayons.item(i).tagName == "rayon") {
                        //on boucle sur les gammes
                        gammes = rayons.item(i).childNodes;
                        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") {
                                        //alert(gammes.item(j).getAttribute("num"));
                                        if(gammes.item(j).getAttribute("num") == type){
                                                mon_rayon = rayons.item(i).getAttribute("num");
                                                break;
                                        }
                                }
                        }
                }
        }

        return mon_rayon;
}

function getURL_param2(monurl){
	if(monurl.indexOf("?") != -1){
        	tab = monurl.split("?");
        	var liste_param = tab[1];
        	var param = liste_param.split("&");
        	for(var k = 0; k < param.length; k++){
                	val = param[k].split("=");
                	getParam[val[0]] = val[1];
        	}
	}else{
		// gerer le cas si url n a pas de param
		getParam["num"] = "1";
		defaut = 1;
	}
}



//on charge le fichier architecture_catalogue.xml qui se situe dans le rÃ©pertoire boutique (et boutique_us)
loadXMLDoc("../boutique/architecture_catalogue.xml");

