/*
 * Gestion de la navigation "Catalogue" en XMLHttpRequest
 */

// Function de reception xhr du Catalogue Produit
function xhrMenuCat() {
	if (http_request.readyState == 4) {
		if (http_request.status == 200) {
			//var objJSON = eval("("+http_request.responseText+")");
			var objJSON = http_request.responseText.parseJSON();
			
			if ((objJSON != null) && (objJSON != "")) {
				var objCatFam = objJSON.Catalogue[0].Famille;
				if (objCatFam.length > 0) {
					var ulFam = document.createElement("ul");
					for (var i=0; i<objCatFam.length; i++) {
						ulFam.appendChild(createLi(objCatFam[i],"fam",false));
					}
					document.getElementById("cat_prod").appendChild(ulFam);
				}
				var objCatMarq = objJSON.Catalogue[1].Marque;
				if (objCatMarq.length > 0) {
					var ulMarq = document.createElement("ul");
					for (var i=0; i<objCatMarq.length; i++) {
						ulMarq.appendChild(createLi(objCatMarq[i],"marq",true));
					}
					document.getElementById("cat_marq").appendChild(ulMarq);
				}
				var objCatPromo = objJSON.Catalogue[2].Promotion;
				if (objCatPromo.length > 0) {
					var ulPromo = document.createElement("ul");
					for (var i=0; i<objCatPromo.length; i++) {
						ulPromo.appendChild(createLi(objCatPromo[i],"promo",false));
					}
					document.getElementById("cat_promo").appendChild(ulPromo);
				}
			}
			bLoading = false;
		}
		/* else {
			alert("Un probleme est survenu avec la requete XHR de la navigation Catalogue.\r\rVeuillez recharger la page en appuyant sur la touche F5.");
		}
		*/
	}
	initMenu("catalogue");
}

// Function r�curssive de cr�ation des menus UL & LI
function createLi(objJsonCat,typeHref,bChangeTypeHref) {
	var liCat = document.createElement("li");
	if ((objJsonCat != null) && (objJsonCat != "")) {
		var id = objJsonCat[0].id;
		var intitule = objJsonCat[1].intitule;
		var intituleHref = intitule.replace(/'/g," ").replace(/"/g," ").replace(/\\/g," ").replace(/%/g," ").replace(/:/g," ");
		
		var aLi = document.createElement("a");
		aLi.setAttribute("href",contextPath + "/" + intituleHref + "/" + typeHref +"/" + id + "/jsessionid=" + sessionId);
		var textA = document.createTextNode(intitule);
		aLi.appendChild(textA);
		liCat.appendChild(aLi);
		
		if (objJsonCat.length == 3) {
			var ulSsLi = document.createElement("ul");
			for (var j=0; j<objJsonCat[2].length; j++) {
				if ((typeHref == "marq") && bChangeTypeHref) {
					ulSsLi.appendChild(createLi(objJsonCat[2][j],typeHref+"/"+id+"/fam",false));
				} else {
					ulSsLi.appendChild(createLi(objJsonCat[2][j],typeHref,bChangeTypeHref));
				}
			}
			liCat.appendChild(ulSsLi);
		}
	}
	return liCat;
}
