var _G = {
	TID: 0,
	CID: 0,
	OID: 0,
	
	buildModItem : function(id,tp,md,val,val2,idt,idc) {
		if (tp == "th") {
			if (md == "nw") {
				var msg = "Cr&eacute;er un Th&egrave;me";
				idt = $("#"+id).attr("idt");
				idc = $("#"+id).attr("idc");
			} else {
				msg = "Renommer le Th&egrave;me";
			}
		} else {
			if (md == "nw") {
				msg = "Cr&eacute;er une Cat&eacute;gorie";
				idt = $("#"+id).attr("idt");
				idc = $("#"+id).attr("idc");
			} else {
				msg = "Renommer la Cat&eacute;gorie";
			}
		}
		//alert(idt+","+idc);
		var html = "";
		html += "<div id=\"param\" style=\"width:300px;height:120px;\">\n";
		html += "	<div class=\"param_head\">"+msg+"</div>";
		html += "	<div class=\"param_item\">\n";
		html += "		fr : <input id=\"p_data\" name=\"\" type=\"text\" value=\""+val+"\" size=\"30\" maxlength=\"50\" />";
		html += "	</div>";
		html += "	<div class=\"param_item\">\n";
		html += "		gb : <input id=\"p_data_gb\" name=\"\" type=\"text\" value=\""+val2+"\" size=\"30\" maxlength=\"50\" />";
		html += "	</div>";
		html += "	<div class=\"param_check\">\n";
		html += "		<input type=\"button\" value=\"Enregistrer\" onclick=\"_G.checkParam('"+tp+"','"+md+"',"+idt+","+idc+")\" class=\"buttonA\" />";
		html += "		<input type=\"button\" value=\"Annuler\" onclick=\"_G.masqueInfo()\" class=\"buttonA\" />";
		html += "	</div>\n";
		html += "</div>";
		
		var position = $("#"+id).offset();
	    var posTop = position.top+20; //-absolutePosX.top+20;
	    var marge = 0;
	    var posLeft = position.left;
	    if (md != "nw") {
	    	posLeft = posLeft-300;
	    	posTop = posTop-40;
	    }
	    $("#zoneinfo").css("left", posLeft+"px");
	    $("#zoneinfo").css("top", posTop+"px");
	    $("#zoneinfo").html(html);
	    $("#zoneinfo").css("display", "block");
	},
	
	checkParam : function(t,m,idt,idc) {
		var data = _A.formatstring($("#p_data").val());
		var data2 = _A.formatstring($("#p_data_gb").val());
		if (data != "") {
			var aleaParam = String(Math.random()).substr(2);
			lstParam = "op=ldprm";
			lstParam += "&idt="+idt+"&idc="+idc;
			lstParam += "&tp="+t+"&md="+m+"&vl="+data+"&vl2="+data2;
			_G.masqueInfo();
			$.ajax( { 
				type: "POST", 
				url: "load_data.php", 
				data: lstParam+"&al="+aleaParam,
				success: _G.actuParamData });
		} else {
			alert("Vous devez saisir un nom");
		}
	},
	
	actuParamData : function(responseXML) {
		var result = responseXML.getElementsByTagName('res')[0].childNodes[0].nodeValue;
		if (result == "Ok") {
			var type = responseXML.getElementsByTagName('type')[0].childNodes[0].nodeValue;
			var mod = responseXML.getElementsByTagName('mod')[0].childNodes[0].nodeValue;
			if (type == "ct") {
				var idt = responseXML.getElementsByTagName('idt')[0].childNodes[0].nodeValue;
				_G.actualiseCategorie(idt);
			} else {
				location.href = "gestion.php";
			}
		}
	},
	
	masqueInfo : function() {
		$("#zoneinfo").css("display", "none");
		$("#zoneinfo").html("");
	},
	
	actualiseCategorie : function(id) {
		_G.TID = id;
		//alert(id);
		//$("#lnkcateg").attr("onclick","_G.buildModItem('lnkcateg','ct','nw','',"+id+",0)");
		$("#lnkcateg").attr("idt",id);
		$("#lnkcateg").attr("idc",0);
		var aleaParam = String(Math.random()).substr(2);
		lstParam = "op=ldctg";
		lstParam += "&idt="+id;
		$.ajax( { 
			type: "POST", 
			url: "load_data.php", 
			data: lstParam+"&al="+aleaParam,
			success: _G.buildCateg });
	},
	
	buildCateg : function(responseXML) {
		var html = "";
		var nbCateg = responseXML.getElementsByTagName('nb')[0].childNodes[0].nodeValue;
		if (nbCateg != 0) {
			var lstCateg = responseXML.getElementsByTagName('cat');
			for (var i=0;i<lstCateg.length;i++) {
				var libCat = lstCateg[i].getElementsByTagName('lib')[0].childNodes[0].nodeValue;
				var libCatGB = lstCateg[i].getElementsByTagName('libgb')[0].childNodes[0].nodeValue;
				if (libCatGB == ".") libCatGB = "";
				var idCat = lstCateg[i].getElementsByTagName('idc')[0].childNodes[0].nodeValue;
				var ordCat = lstCateg[i].getElementsByTagName('ord')[0].childNodes[0].nodeValue;
				var classC = "";
				if (i == 0) _G.CID = idCat;
				if (_G.CID == idCat) classC = " class=\"ctselect\"";
				html += "<div id=\"idct_"+idCat+"\" name=\"item\"  class=\"clear-element page-item2 sort-handle left\">";
				html += "	<div id=\"dvct_"+idCat+"\""+classC+" style=\"padding:4px;\" onclick=\"_G.selectDiv(this.id);\">";	//_G.actualiseObjet("+idCat+")
				html += "		<span class=\"lnkadminb\" onclick=\"_G.deleteCategorie("+idCat+")\" style=\"margin-top:3px;float:right;\">Supprimer</span>";
				html += "		<span id=\"lnk_mdct_"+idCat+"\" class=\"lnkadminb\" onclick=\"_G.buildModItem('lnk_mdct_"+idCat+"','ct','md','"+_A.htmlSpecialChar(libCat)+"','"+_A.htmlSpecialChar(libCatGB)+"',"+_G.TID+","+idCat+")\" style=\"margin-top:3px;margin-right:10px;float:right;\">Modifier</span>";
				html += _A.htmlSpecialChar(libCat);
				html += "	</div>";
				html += "</div>";
				//if (i == 0) _G.CID = idCat;
			}
			$("#lnknwob").css("display", "block");
		} else {
			html += "<div>[ Aucune cat&eacute;gorie enregistr&eacute;e pour ce th&egrave;me ]</div>";
			_G.CID = 0;
			$("#lnknwob").css("display", "none");
			$("#dt_obj").html("");
		}
		
		$("#dt_categ").html(html);
		$('#dt_categ').Sortable({
			accept: 'page-item2',
			opacity: 0.8,
			helperclass: 'helper'
		});
		
		//if (_G.CID != 0) _G.actualiseObjet(_G.CID);
	},
	
	actualiseObjet : function(id) {
		_G.CID = id;
		var aleaParam = String(Math.random()).substr(2);
		lstParam = "op=ldobj";
		lstParam += "&idc="+id;
		$.ajax( { 
			type: "POST", 
			url: "load_data.php", 
			data: lstParam+"&al="+aleaParam,
			success: _G.buildObj });
	},
	
	buildObj : function(responseXML) {
		//alert("buildObj");
		var html = "";
		var nbObj = responseXML.getElementsByTagName('nb')[0].childNodes[0].nodeValue;
		//alert(nbObj);
		if ("nbObj:"+nbObj != 0) {
			var lstObj = responseXML.getElementsByTagName('obj');
			//alert("lstObj:"+lstObj.length);
			for (var i=0;i<lstObj.length;i++) {
				var libObj = lstObj[i].getElementsByTagName('lib')[0].childNodes[0].nodeValue;
				var libObjGB = lstObj[i].getElementsByTagName('libgb')[0].childNodes[0].nodeValue;
				if (libObjGB == ".") libObjGB = libObj;
				var idObj = lstObj[i].getElementsByTagName('ido')[0].childNodes[0].nodeValue;
				var idCat = lstObj[i].getElementsByTagName('idc')[0].childNodes[0].nodeValue;
				var ordObj = lstObj[i].getElementsByTagName('ord')[0].childNodes[0].nodeValue;
				var imgObj = lstObj[i].getElementsByTagName('img')[0].childNodes[0].nodeValue;
				if (imgObj != ".") {
					var lnkObj = "<a href=\"objets_fch.php?ido="+idObj+"\"><img src=\"../doc/"+imgObj+"\" width=\"50\" align=\"absmiddle\" style=\"border: 1px solid #000000\" /></a>";
				} else {
					lnkObj = "<span style=\"width:50px;padding-left:0px;color:#ff0000;\">[!Img]</span>";
				}
				var classO = "";
				if (_G.OID == idObj) classO = " class=\"obselect\"";
				html += "<div id=\"idob_"+idObj+"\" name=\"item\"  class=\"clear-element page-item3 sort-handle left\">";
				html += "	<div id=\"dvob_"+idObj+"\" style=\"padding:4px;\" onclick=\"_G.selectDiv(this.id)\""+classO+">";
				html += "		<span class=\"lnkadminb\" style=\"margin-top:3px;float:right;\"><a href=\"#\" onclick=\"_G.deleteObjet("+idCat+","+idObj+")\">Supprimer</a></span>";
				html += "		<span class=\"lnkadminb\" style=\"margin-top:3px;margin-right:10px;float:right;\"><a href=\"objets_fch.php?ido="+idObj+"\">Modifier</a></span>";
				html += lnkObj+"&nbsp&nbsp;"+_A.htmlSpecialChar(_A.stripslashes(libObj))+" (<i>"+_A.htmlSpecialChar(_A.stripslashes(libObjGB))+"</i>)";
				html += "	</div>";
				html += "</div>";
			}
		} else {
			html += "<div>[ Aucun objet enregistr&eacute; pour cette cat&eacute;gorie ]</div>";
			_G.OID = 0;
		}
		
		$("#dt_obj").html(html);
		$('#dt_obj').Sortable({
			accept: 'page-item3',
			opacity: 0.8,
			helperclass: 'helper'
		});
	},	
	
	recOrdreAll : function(id) {
		var lstItem = $("#"+id).find("div[@name='item']");
		var lstIDitem = "";
		for (var i=0;i<lstItem.length;i++) {
			var idiTem = (lstItem[i].id).substr(5);
			if (lstIDitem != "") lstIDitem += "-";
			lstIDitem += idiTem;
		}
		var lstParam = "op=chgord";
		if (id == "dt_theme") {
			lstParam += "&tp=thm";
		} else if (id == "dt_categ") {
			lstParam += "&tp=cat";
		} else {
			lstParam += "&tp=obj";
		}
		var aleaParam = String(Math.random()).substr(2);
		lstParam += "&lst="+lstIDitem;
		$.ajax({ 
			type: "POST", 
			url: "load_data.php", 
			data: lstParam+"&al="+aleaParam
		});
	},
	
	actuObjet : function(id) {
		//var idt = document.getElementById('obj_sel_thm').options[document.getElementById('obj_sel_thm').selectedIndex].value;
		//var idc = document.getElementById('obj_sel_ctg').options[document.getElementById('obj_sel_ctg').selectedIndex].value;
		//var lnk = "objets.php?idt="+idt+"&idc="+idc;
		//location.href = lnk;
		var aleaParam = String(Math.random()).substr(2);
		lstParam = "op=ldobj";
		lstParam += "&idc="+id;
		$.ajax( { 
			type: "POST", 
			url: "load_data.php", 
			data: lstParam+"&al="+aleaParam,
			success: _G.buildLstCateg });
	},
	
	actuLstCateg : function(id) {
		_G.TID = id;
		var aleaParam = String(Math.random()).substr(2);
		lstParam = "op=ldctg";
		lstParam += "&idt="+id;
		//alert(lstParam);
		$.ajax( { 
			type: "POST", 
			url: "load_data.php", 
			data: lstParam+"&al="+aleaParam,
			success: _G.buildLstCateg });
	},
	
	buildLstCateg : function(responseXML) {
		var html = "";
		var nbCateg = responseXML.getElementsByTagName('nb')[0].childNodes[0].nodeValue;
		if (nbCateg != 0) {
			var lstCateg = responseXML.getElementsByTagName('cat');
			html += "Cat&eacute;gories&nbsp;:&nbsp;<select name=\"obj_sel_ctg\" id=\"obj_sel_ctg\" onchange=\"_G.actualiseObjet(this.value)\">";
			for (var i=0;i<lstCateg.length;i++) {
				var libCat = _A.htmlSpecialChar(lstCateg[i].getElementsByTagName('lib')[0].childNodes[0].nodeValue);
				var idCat = lstCateg[i].getElementsByTagName('idc')[0].childNodes[0].nodeValue;
				var check = "";
				if (i == 0)  {
					check = " selected=\"selected\"";
					_G.CID = idCat;
				}
				html += "	<option value=\""+idCat+"\""+check+">"+libCat+"</option>";
			}
			html += "</select>";
			$("#lnknwob").css("display", "block");
		} else {
			_G.CID = 0;
			$("#lnknwob").css("display", "none");
			html += "<a href=\"gestion.php\">Cr&eacute;er une catégorie</a>"
		}
		
		$("#lstCTG").html(html);
		//alert("_G.CID"+_G.CID);
		if (_G.CID != 0) _G.actualiseObjet(_G.CID);
	},
	
	selectDiv : function(id) {
		var prefixe = id.substr(2,2);
		if ($("#"+id).attr("class") == prefixe+"select") {
			// out
		} else {
			var contdiv = "";
			switch(prefixe) {
				case "th" :
					contdiv = "dt_theme";
					break;
				case "ct" :
					contdiv = "dt_categ";
					break;
				case "ob" :
					contdiv = "dt_obj";
					break;
			}
			var isSelect = $("#"+contdiv).find("div[@class='"+prefixe+"select']");
			for (var i=0;i<isSelect.length;i++) {
				$(isSelect[i]).removeClass();
			}
			$("#"+id).addClass(prefixe+"select");
		}
	},
	
	uploadImg : function(idobj,div) {
		var html = "";
		html += "<div id=\"param\" style=\"width:700px;height:600px;background-color:#eeeeee;\">\n";
		html += "<form name=\"upload\" enctype=\"multipart/form-data\" action=\"objets_fch.php\" method=\"POST\">";
		html += "	<div class=\"param_head\">Ajouter une image</div>";
		html += "	<div class=\"param_item\" style=\"height:40px;margin-top:4px;\">";
		html += "		<div class=\"param_titre\">T&eacute;l&eacute;charger un fichier image</div>";
		html += "		<input type=\"file\" name=\"PFichier\" />";
		html += "		<input name=\"MAX_FILE_SIZE\" value=\"1048576\" type=\"hidden\" />";
		html += "		<input type=\"hidden\" name=\"ido\" value=\""+idobj+"\" />";
		html += "		<input type=\"hidden\" name=\"mod\" value=\"newimg\" />";
		html += "	</div>";
		html += "	<div class=\"param_item\" style=\"height:290px;\">";
		html += "		<div class=\"param_titre\" style=\"margin-top:3px;\">Fichiers actuellement sur le serveur</div>";
		html += "		<div id=\"lst_image\" style=\"margin-top:8px;border:1px solid #999999;height:250px;overflow-x:hidden;overflow-y:scroll;\"></div>";
		html += "	</div>";
		html += "	<div class=\"param_item\" style=\"height:80px;\">";
		html += "		<div class=\"param_titre\">Description</div>";
		html += "		<textarea name=\"img_texte\" cols=\"30\" rows=\"2\"></textarea>";
		html += "	</div>";
		html += "	<div class=\"param_item\" style=\"height:30px;\">";
		html += "		<div class=\"param_titre\">Zoom</div>";
		html += "		<input type=\"checkbox\" name=\"img_zoom\" id=\"img_zoom\" /> &nbsp;&nbsp;Oui (Important: image > 420px)";
		html += "	</div>";
		html += "	<div class=\"param_check\">\n";
		html += "		<input type=\"submit\" value=\"Enregistrer\" class=\"buttonA\" />";
		html += "		<input type=\"button\" value=\"Annuler\" onclick=\"_G.masqueInfo()\" class=\"buttonA\" />";
		html += "	</div>\n";
		html += "</form>\n";
		html += "</div>";
		
		var position = $("#colprinc").offset();
	    var posTop = position.top; //-absolutePosX.top+20;
	    var marge = 0;
	    //if ()
	    var posLeft = position.left;
	    $("#zoneinfo").css("left", posLeft+"px");
	    $("#zoneinfo").css("top", posTop+"px");
	    $("#zoneinfo").html(html);
	    $("#zoneinfo").css("display", "block");
	    // Charger la liste des images
	    $("#lst_image").html(_G.loadImgServeur());
	},
	
	loadImgServeur : function() {
		var aleaParam = String(Math.random());
		lstParam = "op=rdoc&al="+aleaParam;
		var html = $.ajax({
		//$.ajax({
			type	: "POST",
			url		: "load_data.php",
			datatype: "html",
			async   : false,
			data	: lstParam
		}).responseText;

		return html;
	},
	
	actualiseIMG : function(img,height,zoom) {
		html = "<div style=\"width:420px;float:left;\">";
        if (zoom == "on") {
			html += "<div id=\"lnkzoom\" style=\"float:left;width:50px;z-index:20;background:#000000;color:#ffffff;cursor:pointer;\" onclick=\"_G.viewzoom()\">Zoom</div>";
		}
   		html += "<div id=\"imgnorm\"><img src=\"../doc/"+img+"\" width=\"420\" border=\"1\" /></div>";
        html += "</div>";
		if (zoom == "on") {
        	html += "<div id=\"imgzoom\" style=\"width:420px;float:left;border: 1px solid #000000;\"><img src=\"../doc/"+img+"\" id=\"imagePan\" style=\"display: none;\" /></div>";
		}
		$("#img_princ").html(html);
		$('img#imagePan').panView(420,height);
		$("#imagePanPan").css("display", "none");
	},
	
	ordreIMG : function(idi,ido) {
		var aleaParam = String(Math.random()).substr(2);
		lstParam = "op=ordimg";
		lstParam += "&idi="+idi+"&ido="+ido;
		$.ajax( { 
			type: "POST", 
			url: "load_data.php", 
			data: lstParam+"&al="+aleaParam,
			success: _G.affFichObjet });
	},
	
	deleteIMG : function(idi,ido) {
		var aleaParam = String(Math.random()).substr(2);
		lstParam = "op=delimg";
		lstParam += "&idi="+idi+"&ido="+ido;
		if (confirm("Confirmer la suppression de l'image")) {
			$.ajax( { 
				type: "POST", 
				url: "load_data.php", 
				data: lstParam+"&al="+aleaParam,
				success: _G.affFichObjet });
		}
	},
	
	affFichObjet : function(responseXML) {
		var ido = responseXML.getElementsByTagName("ido")[0].childNodes[0].nodeValue;
		location.href = "objets_fch.php?ido="+ido;
	},
	
	deleteObjet : function(idc,ido) {
		if (confirm("Confirmer la suppression de l'objet")) {
			var aleaParam = String(Math.random()).substr(2);
			lstParam = "op=delobj";
			lstParam += "&idc="+idc+"&ido="+ido;
			$.ajax( { 
				type: "POST", 
				url: "load_data.php", 
				data: lstParam+"&al="+aleaParam 
			});
			
			_G.actualiseObjet(idc);
		}
	},
	
	newObjet : function() {
		location.href="objets_fch_nw.php?idt="+_G.TID+"&idc="+_G.CID;
	},
	
	deleteTheme : function(idt) {
		if (confirm("Confirmer la suppression du thème")) {
			var aleaParam = String(Math.random()).substr(2);
			lstParam = "op=delthm";
			lstParam += "&idt="+idt;
			$.ajax( { 
				type: "POST", 
				url: "load_data.php", 
				data: lstParam+"&al="+aleaParam ,
				success: _G.affMsgDelTheme
			});
		}
	},
	
	affMsgDelTheme : function(responseXML) {
		var msg = responseXML.getElementsByTagName("msg")[0].childNodes[0].nodeValue;
		if (msg == "Ok") {
			var nbct = responseXML.getElementsByTagName("nb")[0].childNodes[0].nodeValue;
			if (nbct != 0) {
				alert("Ce thème contient des catégories.\nVous devez d'abord les supprimer");
			} else {
				alert("Thème effacé");
			}
		} else {
			alert("Erreur lors de la suppression du thème");
		}
		location.href = "gestion.php";
	},	
	
	deleteCategorie : function(idc) {
		if (confirm("Confirmer la suppression de la catégorie")) {
			var aleaParam = String(Math.random()).substr(2);
			lstParam = "op=delctg";
			lstParam += "&idc="+idc;
			$.ajax( { 
				type: "POST", 
				url: "load_data.php", 
				data: lstParam+"&al="+aleaParam,
				success: _G.affMsgDelCategorie
			});
		}
	},
	
	affMsgDelCategorie : function(responseXML) {
		var msg = responseXML.getElementsByTagName("msg")[0].childNodes[0].nodeValue;
		if (msg == "Ok") {
			var nbct = responseXML.getElementsByTagName("nb")[0].childNodes[0].nodeValue;
			if (nbct != 0) {
				alert("Cette catégorie contient des objets.\nVous devez d'abord les déplacer ou les supprimer");
			} else {
				alert("Catégorie effacée");
			}
		} else {
			alert("Erreur lors de la suppression de la catégorie");
		}
		location.href = "gestion.php";
	},
	
	viewzoom : function() {
		if ($("#imgnorm").css("display") == "block") {
			$("#imgnorm").css("display", "none");
			//$("#imgzoom").css("display", "block");
			$("#lnkzoom").html("Normal");
			if ($("#imagePanPan").css("display") == "none") {
				$("#imagePanPan").css("display", "block");
			//} else {
			//	$('img#imagePan').panView(420,400);
			}
		} else {
			//$("#imgzoom").css("display", "none");
			$("#imagePanPan").css("display", "none");
			$("#imgnorm").css("display", "block");
			$("#lnkzoom").html("Zoom");
		}
	}
}
