var defaut = 0; 

liste_univers = new Array(8);
univers = new Array(8);
padding= new Array(8);

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"] = "161";
	defaut = 1;
}

// liste des numeros de rayon appartenant a cet univers
univers[0]="161";
univers[1]="171";
univers[2]="162";
univers[3]="91";
univers[4]="51";
univers[5]="71"
univers[6]="131";
univers[7]="181";

padding[0]="1";
padding[1]="2";
padding[2]="3";
padding[3]="4";
padding[4]="5";
padding[5]="6"
padding[6]="7";
padding[7]="8";





//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
/*------------------------------------------------------------*/

function fondRayon(fondImgRayon)
{
	//alert(rayon.style.backgroundImage);
	if(fondImgRayon.style.backgroundImage == "")
	{
	fondImgRayon.style.color='#ffffff';
	fondImgRayon.style.textDecoration='none';	
	}
	else{
	fondImgRayon.style.color='#BED724';
	fondImgRayon.style.textDecoration='none';
	}

}


function fondGamme(fondImgGamme)
{
	if(fondImgGamme.style.backgroundColor =="")
	{
		fondImgGamme.style.backgroundColor ='#6A605E';
		fondImgGamme.style.color='#E7FA87';
		fondImgGamme.style.paddingLeft='3px';
	}
	else
	{
		fondImgGamme.style.backgroundColor ='';
	}

}

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


function xmlProcessor2(catalogue) {
	if(!getParam["num"]){
		getParam["num"] = getRayonFromGamme(xmlDocument, getParam["type"]);
	}

	// permet de recuperer l'univers courant a partir du num rayon courant (param num de l'url)
	mon_univers = getUniversFromRayon(getParam["num"]);
	if(mon_univers != -1){
	k = mon_univers;

	rayons = catalogue.documentElement.childNodes;
        var contenu2="<ul id=\"cadreMenu2\">\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"));
											contenu2 += "<li>";
											contenu2 +="<a href=\"#\" class='lienRayonUnivers' >"+rayons.item(i).getAttribute("nom")+"</a>";
												
											//LISTAGE GAMME
											//formatage du cadre gammes
											contenu2 += "<div  class=\"cadreMenuGamme\" id=\"" + rayons.item(i).getAttribute("num") + "\">\n";
		
											
											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"));
														contenu2 += "<a href=\"" + gammes.item(j).getAttribute("url") + "\"  id=\"lienGammes"+gammes.item(j).getAttribute("num")+"\"  class=\"lienGammeUnivers\" onclick=\"fondGamme(this) ; \" style=\"color:#fff;\">" + gammes.item(j).getAttribute("nom") + "</a>\n";														
													
													}
											}
											
											//formatage fin du cadre gammes
											contenu2 += "</div></li>\n";
											
                                      }
                                }
                        }
                }
	//}
 
        
	contenu2 += "</ul>\n";
        //on affiche notre variable de nav
        document.getElementById("menuGauche").innerHTML = contenu2;
		
	if(defaut != 1){
		fondGamme(document.getElementById('lienGammes'+getParam["type"]));		
		}
		
	} //if mon univers
	
}//if xlm processor






/*Navigation Gauche*/
function xmlProcessor(catalogue) {

        if(!getParam["num"]){
                getParam["num"] = getRayonFromGamme(xmlDocument, getParam["type"]);
        }

        // permet de recuperer l'univers courant a partir du num rayon courant (param num de l'url)
        mon_univers = getUniversFromRayon(getParam["num"]);
        if(mon_univers != -1){
        k = mon_univers;


        rayons = catalogue.documentElement.childNodes;
        var contenu="<table cellspacing='0' cellpadding='0' id=\"cadreMenu\"><tr>\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]){
											
											if(rayons.item(i).getAttribute("num") ==161){
												
											   //alert(rayons.item(i).getAttribute("nom"));
                                                contenu += "<td class=\"cadreLienRayon\"><a id=\"lien"+rayons.item(i).getAttribute("num")+"\" href=\""+rayons.item(i).getAttribute("url")+"\" class=\"lienRayon"+padding[k]+"\"><span style=\"color:#32191D;\">" + rayons.item(i).getAttribute("nom") +"</span></a>\n";
												//fin du cadre gammes + contener rayon
												contenu += "</td>\n";
											}
											else{
                                                contenu += "<td><a id=\"lien"+rayons.item(i).getAttribute("num")+"\" href=\""+rayons.item(i).getAttribute("url")+"\" onclick=\" fondRayon(this) ; \"  class=\"lienRayon"+padding[k]+"\">" + rayons.item(i).getAttribute("nom") +"</a>\n";
												//fin du cadre gammes + contener rayon
												contenu += "</td>\n";												
											}

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


        }


        contenu += "</tr></table>\n";
        //on affiche notre variable de nav
        document.getElementById("menuHaut").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('lien'+getParam["num"]));
		//fondGamme(document.getElementById('lienGammes'+getParam["type"]));		
		}
	} //if mon univers

	xmlProcessor2(xmlDocument);
}







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");

