//-------------------------------------------------------- // Chargement des modules //-------------------------------------------------------- $(function() { //Classe pour IE10 if($.browser.msie && $.browser.version == 8) $("html").addClass("ie10"); //Initialisation des DatePicker $(".DatePicker").datepicker({ showOn: "button", showAnim: "slideDown", buttonImageOnly: true, buttonImage: "ressources/images/datePicker.png", buttonText: "Choisir une date" }); //Initialisation des TimePicker $(".TimePicker").timepicker({ showOn: "button", showAnim: "slideDown", buttonImageOnly: true, buttonImage: "ressources/images/timePicker.png", buttonText: "Choisir une heure", stepMinute: 5 }); //Initialisation des Tabs $(".TabFrm").tabs(); //Initialisation des Buttons Set $(".ButtonSet").buttonset(); //Initialisation des Checkbox Iphone $(".ICheckBox").iphoneStyle(); //Initialisation des Autocomplete ZMails $(".ZMail").autocomplete({ source: "modules/fonctions/json/dataMails.php?action=getLesZMails", minLength: 1 }); //Initialisation des Autocomplete ZMails $(".ZRessource").autocomplete({ source: "modules/fonctions/json/dataMails.php?action=getLesZRessources", minLength: 1 }); //Initialisation des PlaceHolder Textarea $("input[type='text'], textarea").placeholder(); //Initialisation des champs obligatoires makeRequired(); }); //--------------------------------------------------- // Fonctions générales //--------------------------------------------------- //Vérifie si la chaine est une date function estUneDate(chaine) { var regex = /^(0[1-9]|[12][0-9]|3[01])[\/](0[1-9]|1[012])[\/](19|20)\d\d$/; return regex.test(chaine); } //Vérifie si la chaine est une heure function estUneHeure(chaine) { var regex = /^([0-9]|[[01][0-9]|[2][0-3])[:]([0-5][0-9])$/; return regex.test(chaine); } //Protège les caractères spéciaux function escapeString(chaine) { var chFinale = chaine .replace(/&/g, "&") .replace(/"/g, """) .replace(/'/g, "'") .replace(/\\/g, "\") .replace(//g, ">"); return chFinale; } //Récupère la valeur d'une variable passé dans l'url (method GET) function getVarUrl(nomVar) { //Variables nomVar = nomVar + "="; var tailleVar = nomVar.length; var result = false; var uri = location.href.substr(location.href.indexOf("?")+1) + "&"; //Récupère l'URI (...&nomVar=valeur&...&) //Permet de récupérer l'URI sans le hash (#... => invisible pour le moteur des recherches) if (uri.indexOf("#") != -1) uri = uri.substring(0, uri.indexOf("#")) + "&"; //Si la variable est envoyée dans l'URL if (uri.indexOf(nomVar) != -1) { tailleVar = uri.indexOf(nomVar) + tailleVar; //Taille jusqu'à nomVar= (...&nomVar=) result = uri.substr(tailleVar); //Récupère la suite de l'URI à partir de la valeur de nomVar (valeur&...&) result = result.substr(0, result.indexOf("&")); //Récupère la valeur de nomVar } return result; } //Charge la valeur pour l'input choisi function setInputValue(nom, valeur) { if($("[name=" + nom + "]").length) $("[name=" + nom + "]").val(valeur); } //Récupère la valeur de l'input choisi function getInputValue(nom) { return $("[name=" + nom + "]").val(); } //Affiche un div function afficheDIV(idDiv) { $("#" + idDiv).show(); } //Masque un div function masqueDIV(idDiv) { $("#" + idDiv).hide(); } //Affiche/Masque un div function afficheMasqueDIV(idDiv) { if($("#" + idDiv).css("display") != "block") $("#" + idDiv).show(); else $("#" + idDiv).hide(); //Pour la fiche if(idDiv == "frmUploadFile") $("#frmMotifCancel").hide(); if(idDiv == "frmMotifCancel") $("#frmUploadFile").hide(); } //Vide un tableau sans l'en-tête function videTableau(oTable) { $(oTable).find("tbody tr").remove(); } //Supprime une ligne d'un tableau function deleteLigneTr(oTD) { $(oTD).parent().parent().remove(); } //Copie et colle un champ function copieColle(chpACopier, chpOuColler) { $("[name='" + chpOuColler + "']").val($("[name='" + chpACopier + "']")[0].value); } //Inverse les cases cochés dans le checkbox function cocheOnOff(cocheCheckbox, nameCheckboxs) { $("input[name='" + nameCheckboxs + "']").each //Pour chaque checkbox du tableau ( function() { if(cocheCheckbox.checked) //Si le main checkbox est coché $(this).attr("checked", true); else //Sinon on décoche tout $(this).attr("checked", false); } ); } //Affiche un astérisque pour un champ obligatoire function makeRequired(idElement) { var idLabel = "label.required"; if(idElement) idLabel = "label[id='" + idElement + "']"; //Pour chaque label avec la classe 'required' $(idLabel).each ( function() { //Variables var endHtml = ""; var txtHtml = $(this).html(); var pos2pt = txtHtml.lastIndexOf(":"); //Traitement s'il y a : dans le label if(pos2pt != -1) { endHtml = txtHtml.substr(pos2pt); txtHtml = txtHtml.substr(0, pos2pt); } //Ajout de l'astérisque if($(this).has("font[color='red']").length != 0) $("label > font[color='red']").html("*"); else $(this).html(txtHtml + " * " + endHtml); } ); } //Enlève l'astérisque pour un champ obligatoire function unmakeRequired(idElement) { var idLabel = "label.required"; if(idElement) idLabel = "label[id='" + idElement + "']"; //Pour chaque label avec la classe 'required' $(idLabel).each ( function() { //Enlève l'astérisque $(this).find("font[color='red']").replaceWith(""); } ); } //Ouvre la vidéo de démonstration function openTutoriel() { //Variables var idDialog = "#demoVideo"; var fileDialog = "vues/popups/p_demoVideo.php?"; //Charge le contenu de la boîte de dialogue $(idDialog).load(fileDialog).dialog ({ modal: true, minWidth: 1064, position: ["auto", 10], close: function() { $(idDialog).dialog("destroy"); }, buttons: { "Revoir": function() { $(idDialog).load(fileDialog); }, "Fermer": function() { $(idDialog).dialog("close"); } } }); } //--------------------------------------------------- // Fonctions liées au formulaire //--------------------------------------------------- //******************************* //***** Form Initialisation ***** //******************************* //Initialisation du formulaire (bouton reset) function initForm() { //Récupération du cas d'utilisation var url = "index.php?"; var uc = getVarUrl("uc"); var action = getVarUrl("action"); var id = getVarUrl("id"); //Actualisation de la page if(uc) url += "uc=" + uc; if(action) url += "&action=" + action; if(id) url += "&id=" + id; $(location).attr("href", url); // document.location.href = url; } //**************************** //***** Form ModifCompte ***** //**************************** //Affiche/Masque la choix des alertes si le suivi est coché ou non function onChgSuivi(oChkVal) { //Affichage ou non if(oChkVal) $("#SaisieAlerteSuivi").show(); else { $("#SaisieAlerteSuivi").hide(); $("#AlerteSuivi").attr("checked", false); $("#AlerteSuivi").iphoneStyle("refresh"); } } //***************************** //***** Form ModifService ***** //***************************** //Affiche/Masque certains champs en fonction du niveau choisi function onChgNiveau(oChkVal) { //Désactivage ou non if(oChkVal == 1) //Pour direction { //Direction $("select[name='IdSrvParent']").attr("disabled", true); $("select[name='IdSrvParent']").val(0); $("#SaisieSrvParent").hide(); //SaisieSuivi $("#SaisieSuivi").show(); //SaisieAlerteSuivi $("#SaisieAlerteSuivi").show(); //Suivi $("#Suivi").attr("disabled", false); $("#Suivi").attr("checked", true); $("#Suivi").iphoneStyle("refresh"); //AlerteSuivi $("#AlerteSuivi").attr("checked", true); $("#AlerteSuivi").iphoneStyle("refresh"); } else //Pour service { //Direction $("select[name='IdSrvParent']").attr("disabled", false); $("#SaisieSrvParent").show(); //SaisieSuivi $("#SaisieSuivi").hide(); //SaisieAlerteSuivi $("#SaisieAlerteSuivi").hide(); //Suivi $("#Suivi").attr("checked", false); $("#Suivi").iphoneStyle("refresh"); $("#Suivi").attr("disabled", true); $("#Suivi").iphoneStyle("refresh"); } } //******************************* //***** Form ModifRessource ***** //******************************* //----- Afficher/Masquer Salle ----- //Charge les informations du service sélectionné function loadInfoService(idSrv) { //Valeur de la liste if(!idSrv) idSrv = getInputValue("IdService"); //S'il y a un service if(idSrv != 0) { //Envoie des données var xhr = newXMLHttpRequest(); xhr.open("POST", "modules/fonctions/xml/itemsServices.php", true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.send("action=getOne&IdSrv=" + idSrv); //Actualisation de la page xhr.onreadystatechange = function() { if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) { unService = xhr.responseXML.getElementsByTagName("item")[0]; //alert(xhr.responseText); setInputValue("MailSrv", unService.getAttribute("mail")); setInputValue("Elus", unService.getAttribute("elu")); $("#loadService").hide(); } else if(xhr.readyState < 4) { $("#loadService").css("display", "inline"); } }; } } //Affiche/Masque certains choix si la salle est coché function checkSalle() { masqueDIV('SaisieTypeRessource'); afficheDIV('SaisieSalle'); } //Affiche/Masque certains choix si la salle n'est pas coché function uncheckSalle() { afficheDIV('SaisieTypeRessource'); masqueDIV('SaisieSalle'); } //----- Gestion des mails ----- //Ajoute un input pour plusieurs mails gestionnaires function addInputMailGest() { //-------------- // Variables //-------------- var oTBody = $("#MailGestAssocies tbody")[0]; var contentTR; //-------------- // Traitement //-------------- // - On crée le contenu du TR contentTR = ''; contentTR += ' '; contentTR += ' - '; contentTR += ''; // - On ajoute le TR $(oTBody).append(contentTR); // - On rend le champ accessible aux mails zimbra $(".ZMail").autocomplete({ source: "modules/fonctions/json/dataMails.php?action=getLesZMails", minLength: 1 }); } //Recharge la liste des mails function loadTabMails(oData) { //-------------- // Variables //-------------- var lesItems = oData.getElementsByTagName("listItem")[0].getElementsByTagName("item"); //alert(lesItems.length); var oTable = document.getElementById("MailAffectes"); var oTBody = oTable.getElementsByTagName("tbody")[0]; var oTR, oTD; var i = 0; //-------------- // Traitement //-------------- // - Vidange le tableau videTableau(oTable); // - Chargement du tableau if(lesItems.length > 0) { for(var i = 0; i < lesItems.length; i++) { var idMail = lesItems[i].getAttribute("id"); oTR = oTBody.insertRow(-1); oTD = oTR.insertCell(0); oTD.width = "100%"; oTD.innerHTML = lesItems[i].getAttribute("mail"); oTD = oTR.insertCell(1); oTD.width = "16"; oTD.innerHTML = ""; } } else { oTR = oTBody.insertRow(-1); oTD = oTR.insertCell(-1); oTD.colSpan = 2; oTD.innerHTML = "Aucun email n'est rattaché à cette ressource."; } } //Ouvre le formulaire d'ajout de mail function addMail() { //Variables var idDialog = "#frmAddMail"; var idRessource = document.getElementById("IdRessource").value; //Charge le contenu de la boîte de dialogue $(idDialog).load("vues/popups/p_frmAddMail.php?IdRessource=" + idRessource).dialog ({ modal: true, minWidth: 400, position: ["auto", 210], close: function() { $(idDialog).dialog("destroy"); }, buttons: { "Associer": function() { //Variables var msgErreur = new Array(); var idRess = $("#IdRessource").val(); var mail = escape($("#Mail").val()); //Envoie des données var xhr = newXMLHttpRequest(); xhr.open("POST", "modules/fonctions/xml/itemsMails.php", true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.send("action=add&IdRess=" + idRess + "&AdrMail=" + mail); //Actualisation de la page xhr.onreadystatechange = function() { if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) { $("#loadMail").hide(); var oData = xhr.responseXML; //alert(xhr.responseText); var lesErreurs = oData.getElementsByTagName("error"); //alert(lesErreurs.length); //Traitement des erreurs if(lesErreurs.length > 0) { msgErreur = new Array(); for(i = 0; i < lesErreurs.length; i++) msgErreur.push(lesErreurs[i].text || lesErreurs[i].textContent); updateTips(msgErreur); } else { loadTabMails(oData); updateTips("E-mail ajouté avec succès!", "green"); setTimeout(function() { $(idDialog).dialog("close"); }, 1000); } } else { $("#loadMail").css("display", "inline"); updateTips("Pas de réponse du serveur! (Erreur: " + xhr.statuts + " - " + xhr.statusText + ")"); } }; }, "Annuler": function() { $(idDialog).dialog("close"); } } }); } //Supprime le mail function deleteMail(idMail) { if(confirm("Êtes-vous sûr de vouloir supprimer cet e-mail? \nAttention, cette action est irréversible!")) { //Envoie des données var idRessource = document.getElementById("IdRessource").value; var xhr = newXMLHttpRequest(); xhr.open("POST", "modules/fonctions/xml/itemsMails.php", true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.send("action=delete&IdRess=" + idRessource + "&IdMail=" + idMail); //Actualisation de la page xhr.onreadystatechange = function() { if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) { $("#loadMail").hide(); var oData = xhr.responseXML; //alert(xhr.responseText); var lesErreurs = oData.getElementsByTagName("error"); //alert(lesErreurs.length); if(lesErreurs.length > 0) { msgErreur = new Array(); for(i = 0; i < lesErreurs.length; i++) msgErreur.push(lesErreurs[i].text || lesErreurs[i].textContent); updateTips(msgErreur, "red", "msgsMail"); } else { loadTabMails(oData); updateTips("E-mail supprimé avec succès!", "green", "msgsMail"); } } else { $("#loadMail").css("display", "inline"); updateTips("Pas de réponse du serveur! (Erreur: " + xhr.statuts + " - " + xhr.statusText + ")"); } }; } } //----- Gestion des champs ----- //Recharge la liste des champs function loadTabChamps(oData) { //-------------- // Variables //-------------- var lesItems = oData.getElementsByTagName("listItem")[0].getElementsByTagName("item"); //alert(lesItems.length); var oTable = document.getElementById("ChpAffectes"); var oTBody = oTable.getElementsByTagName("tbody")[0]; var oTR, oTD; var i = 0; //-------------- // Traitement //-------------- // - Vidange le tableau videTableau(oTable); // - Chargement du tableau if(lesItems.length > 0) { for(var i = 0; i < lesItems.length; i++) { var idChp = lesItems[i].getAttribute("id"); var fctOnclick = "editChamp(" + idChp + ");"; var lblTitre = "Cliquez ici pour modifier"; oTR = oTBody.insertRow(-1); oTR.className = "ligneTableau"; oTD = oTR.insertCell(0); oTD.width = "16"; oTD.innerHTML = ""; oTD = oTR.insertCell(1); oTD.setAttribute("onClick", fctOnclick); oTD.setAttribute("title", lblTitre); oTD.innerHTML = lesItems[i].getAttribute("order"); oTD = oTR.insertCell(2); oTD.setAttribute("onClick", fctOnclick); oTD.setAttribute("title", lblTitre); oTD.innerHTML = lesItems[i].getAttribute("type"); oTD = oTR.insertCell(3); oTD.setAttribute("onClick", fctOnclick); oTD.setAttribute("title", lblTitre); oTD.innerHTML = lesItems[i].getAttribute("name"); oTD = oTR.insertCell(4); oTD.setAttribute("onClick", fctOnclick); oTD.setAttribute("title", lblTitre); oTD.innerHTML = lesItems[i].getAttribute("comment"); var imgObligatoire = ""; var imgFacultatif = ""; oTD = oTR.insertCell(5); oTD.setAttribute("onClick", fctOnclick); oTD.setAttribute("title", lblTitre); oTD.innerHTML = parseInt(lesItems[i].getAttribute("require")) ? imgObligatoire : imgFacultatif; var imgVisible = ""; var imgMasque = ""; oTD = oTR.insertCell(6); oTD.setAttribute("onClick", fctOnclick); oTD.setAttribute("title", lblTitre); oTD.innerHTML = parseInt(lesItems[i].getAttribute("visible")) ? imgVisible : imgMasque; oTD = oTR.insertCell(7); oTD.width = "16"; oTD.innerHTML = ""; } } else { oTR = oTBody.insertRow(-1); oTD = oTR.insertCell(-1); oTD.colSpan = 8; oTD.innerHTML = "Aucun champ n'a été associé à cette ressource."; } } //Ouvre le formulaire d'ajout de champ function addChamp() { //Variables var idDialog = "#frmAddChamp"; var idRessource = $("#IdRessource").val(); //Charge le contenu de la boîte de dialogue $(idDialog).load("vues/popups/p_frmModifChamp.php?IdRessource=" + idRessource).dialog ({ modal: true, minWidth: 400, position: ["auto", 210], close: function() { $(idDialog).dialog("destroy"); }, buttons: { "Créer": function() { //Variables var end = "Add"; var idRess = $("#IdRessource" + end).val(); var idTypeChp = $("#IdTypeChamp" + end).val(); var ordreChp = $("#Ordre" + end).val(); var nomChp = escape($("#Nom" + end).val()); var rqChp = escape($("#Comment" + end).val()); var isRequired = $("#IsRequired" + end).is(':checked') ? 1 : 0; //Test des erreurs var msgErreur = new Array(); if(!idRess) msgErreur.push("Pas de ressource définie."); if(parseInt(idTypeChp) == 0 || !ordreChp || !nomChp) msgErreur.push("Veuillez remplir tous les champs obligatoires (*)."); if(ordreChp && (isNaN(ordreChp) || parseInt(ordreChp) == 0)) msgErreur.push("Le numéro d'ordre est un nombre entier!"); //Affichage des erreurs if(msgErreur.length > 0) updateTips(msgErreur); else { //Envoie des données var xhr = newXMLHttpRequest(); xhr.open("POST", "modules/fonctions/xml/itemsChamps.php", true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.send("action=add&IdRess=" + idRess + "&IdTypeChp=" + idTypeChp + "&OrdreChp=" + ordreChp + "&NomChp=" + nomChp + "&RqChp=" + rqChp + "&IsRequired=" + isRequired); //Actualisation de la page xhr.onreadystatechange = function() { if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) { $("#loadChamp").hide(); var oData = xhr.responseXML; //alert(xhr.responseText); var lesErreurs = oData.getElementsByTagName("error"); //alert(lesErreurs.length); if(lesErreurs.length > 0) { msgErreur = new Array(); for(i = 0; i < lesErreurs.length; i++) msgErreur.push(lesErreurs[i].text || lesErreurs[i].textContent); updateTips(msgErreur); } else { loadTabChamps(oData); updateTips("Champ créé avec succès!", "green"); setTimeout(function() { $(idDialog).dialog("close"); }, 1000); } } else { $("#loadChamp").css("display", "inline"); updateTips("Pas de réponse du serveur! (Erreur: " + xhr.statuts + " - " + xhr.statusText + ")"); } }; } }, "Annuler": function() { $(idDialog).dialog("close"); } } }); } //Ouvre le formulaire de modif de champ function editChamp(idChp) { //Variables var idDialog = "#frmEditChamp"; //Charge le contenu de la boîte de dialogue $(idDialog).load("vues/popups/p_frmModifChamp.php?id=" + idChp).dialog ({ modal: true, minWidth: 400, position: ["auto", 210], close: function() { $(idDialog).dialog("destroy"); }, buttons: { "Modifier": function() { //Variables var end = "Edit"; var idRess = $("#IdRessource" + end).val(); var idTypeChp = $("#IdTypeChamp" + end).val(); var ordreChp = $("#Ordre" + end).val(); var nomChp = escape($("#Nom" + end).val()); var rqChp = escape($("#Comment" + end).val()); var isRequired = $("#IsRequired" + end).is(':checked') ? 1 : 0; var isVisible = $("#IsVisible" + end).is(':checked') ? 1 : 0; //Test des erreurs var msgErreur = new Array(); if(!idRess) msgErreur.push("Pas de ressource définie."); if(parseInt(idTypeChp) == 0 || !ordreChp || !nomChp) msgErreur.push("Veuillez remplir tous les champs obligatoires (*)."); if(ordreChp && (isNaN(ordreChp) || parseInt(ordreChp) == 0)) msgErreur.push("Le numéro d'ordre est un nombre entier!"); //Affichage des erreurs if(msgErreur.length > 0) updateTips(msgErreur); else { //Envoie des données var xhr = newXMLHttpRequest(); xhr.open("POST", "modules/fonctions/xml/itemsChamps.php", true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.send("action=edit&IdChp=" + idChp + "&IdRess=" + idRess + "&IdTypeChp=" + idTypeChp + "&OrdreChp=" + ordreChp + "&NomChp=" + nomChp + "&RqChp=" + rqChp + "&IsRequired=" + isRequired + "&IsVisible=" + isVisible); //Actualisation de la page xhr.onreadystatechange = function() { if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) { $("#loadChamp").hide(); var oData = xhr.responseXML; //alert(xhr.responseText); var lesErreurs = oData.getElementsByTagName("error"); //alert(lesErreurs.length); if(lesErreurs.length > 0) { msgErreur = new Array(); for(i = 0; i < lesErreurs.length; i++) msgErreur.push(lesErreurs[i].text || lesErreurs[i].textContent); updateTips(msgErreur); } else { loadTabChamps(oData); updateTips("Champ modifié avec succès!", "green"); setTimeout(function() { $(idDialog).dialog("close"); }, 1000); } } else { $("#loadChamp").css("display", "inline"); updateTips("Pas de réponse du serveur! (Erreur: " + xhr.statuts + " - " + xhr.statusText + ")"); } }; } }, "Annuler": function() { $(idDialog).dialog("close"); } } }); } //Supprime le champ function deleteChamp(idChp) { if(confirm("Êtes-vous sûr de vouloir supprimer ce champ? \nAttention, cette action est irréversible!")) { //Envoie des données var idRessource = document.getElementById("IdRessource").value; var xhr = newXMLHttpRequest(); xhr.open("POST", "modules/fonctions/xml/itemsChamps.php", true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.send("action=delete&IdRess=" + idRessource + "&IdChp=" + idChp); //Actualisation de la page xhr.onreadystatechange = function() { if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) { $("#loadChamp").hide(); var oData = xhr.responseXML; //alert(xhr.responseText); var lesErreurs = oData.getElementsByTagName("error"); //alert(lesErreurs.length); if(lesErreurs.length > 0) { msgErreur = new Array(); for(i = 0; i < lesErreurs.length; i++) msgErreur.push(lesErreurs[i].text || lesErreurs[i].textContent); updateTips(msgErreur, "red", "msgsChamp"); } else { loadTabChamps(oData); updateTips("Champ supprimé avec succès!", "green", "msgsChamp"); } } else { $("#loadChamp").css("display", "inline"); updateTips("Pas de réponse du serveur! (Erreur: " + xhr.statuts + " - " + xhr.statusText + ")"); } }; } } //Ouvre le formulaire d'ajout de la ressource function loadFrmRessource() { //-------------- // Variables //-------------- var idDialog = "#frmRessource"; var idRess = laRessource.IdRessource; //-------------- // Traitement //-------------- // - Quitte s'il n'y a pas de ressource sélectionnée if(idRess == 0) { alert("La ressource n'existe pas!"); return; } // - Charge la ressource s'il n'y a pas de champ if(laRessource.NbChamps == 0 && laRessource.NbMails == 0 && !laRessource.Commentaire) { alert("La ressource ne possède pas de champs! \nActualiser cette page en cliquant sur enregistrer."); return; } // - Charge le contenu de la boîte de dialogue s'il y a des champs $(idDialog).load("vues/popups/p_frmAddRessource.php?id=" + idRess).dialog ({ modal: true, minWidth: 500, position: ["auto", 210], close: function() { $(idDialog).dialog("destroy"); }, buttons: { "Quitter": function() { $(idDialog).dialog("close"); } } }); } //*************************** //***** Form ModifManif ***** //*************************** //----- Afficher/Masquer + Chp obligatoire ----- //Rend obligatoire le détail du type de manifestation function onChgTypeManifestation(oSelect) { idTypeManif = oSelect.options[oSelect.selectedIndex].value; if(idTypeManif == 1 ||idTypeManif == 9) makeRequired('LblDtlTypeManif'); else unmakeRequired('LblDtlTypeManif'); } //----- Ajout de l'organisateur ----- //Charge la liste des organisateurs function loadSelOrganisateurs(oData) { //-------------- // Variables //-------------- var idSrv = getInputValue("Service"); //-------------- // Traitement //-------------- // - Charge la liste des organisateurs du service if(!oData) { //Envoie des données var xhr = newXMLHttpRequest(); xhr.open("POST", "modules/fonctions/xml/itemsOrganisateurs.php", true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.send("IdSrv=" + idSrv); //Actualisation de la page xhr.onreadystatechange = function() { if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) { setSelectItems("Organisateur", xhr.responseXML); //alert(xhr.responseText); $("#loadOrganisateur").hide(); } else if(xhr.readyState < 4) { $("#loadOrganisateur").css("display", "inline"); } }; } else setSelectItems("Organisateur", oData); // - Charge l'élu du service loadInfoService(idSrv); } //Charge les informations de l'organisateur sélectionné function loadInfoOrganisateur() { //Valeur de la liste var idOrg = getInputValue("Organisateur"); //Charge les infos de l'organisateur if(idOrg != 0) { //Envoie des données var xhr = newXMLHttpRequest(); xhr.open("POST", "modules/fonctions/xml/itemsOrganisateurs.php", true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.send("action=getOne&IdOrg=" + idOrg); //Actualisation de la page xhr.onreadystatechange = function() { if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) { unOrganisateur = xhr.responseXML.getElementsByTagName("item")[0]; //alert(xhr.responseText); setInputValue("Service", unOrganisateur.getAttribute("idService")); setInputValue("NomOrg", unOrganisateur.getAttribute("name")); setInputValue("TelOrg", unOrganisateur.getAttribute("phone")); setInputValue("MailOrg", unOrganisateur.getAttribute("mail")); $("#loadOrganisateur").hide(); } else if(xhr.readyState < 4) { $("#loadOrganisateur").css("display", "inline"); } }; } } //Ouvre le formulaire d'ajout d'un organisateur function addOrganisateur() { //Variables var idDialog = "#frmAddOrganisateur"; var idSrv = getInputValue("Service"); //Charge le contenu de la boîte de dialogue $(idDialog).load("vues/popups/p_frmAddOrganisateur.php?IdService=" + idSrv).dialog ({ modal: true, minWidth: 400, position: ["auto", 210], close: function() { $(idDialog).dialog("destroy"); }, buttons: { "Créer": function() { //Variables var idSrv = $("#OrgIdSrv").val(); var nomOrg = escape($("#OrgNom").val()); var telOrg = escape($("#OrgTel").val()); var mailOrg = escape($("#OrgMail").val()); //Test des erreurs var msgErreur = new Array(); if(parseInt(idSrv) == 0) msgErreur.push("Pas de service défini."); if(!nomOrg || !telOrg || !mailOrg) msgErreur.push("Veuillez remplir tous les champs obligatoires (*)."); //Affichage des erreurs if(msgErreur.length > 0) updateTips(msgErreur); else { //Envoie des données var xhr = newXMLHttpRequest(); xhr.open("POST", "modules/fonctions/xml/itemsOrganisateurs.php", true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.send("action=add&IdSrv=" + idSrv + "&NomOrg=" + nomOrg + "&TelOrg=" + telOrg + "&MailOrg=" + mailOrg); //Actualisation de la page xhr.onreadystatechange = function() { if(xhr.readyState == 4 && (xhr.status == 200 || xhr.status == 0)) { $("#loadOrganisateur").hide(); var oData = xhr.responseXML; //alert(xhr.responseText); var lesErreurs = oData.getElementsByTagName("error"); //alert(lesErreurs.length); if(lesErreurs.length > 0) { msgErreur = new Array(); for(i = 0; i < lesErreurs.length; i++) msgErreur.push(lesErreurs[i].text || lesErreurs[i].textContent); updateTips(msgErreur); } else { loadSelOrganisateurs(oData); loadInfoOrganisateur(); updateTips("Organisateur créé avec succès!", "green"); setTimeout(function() { $(idDialog).dialog("close"); }, 1000); } } else { $("#loadOrganisateur").css("display", "inline"); updateTips("Pas de réponse du serveur! (Erreur: " + xhr.statuts + " - " + xhr.statusText + ")"); } }; } }, "Annuler": function() { $(idDialog).dialog("close"); } } }); } //----- Gestion de la réservation des ressources ----- //Réinitialise les ressources function initRessource() { //-------------- // Variables //-------------- var oSelect = $("select[name='IdSelRessource']"); var oOptions = ""; var nbRessources = lesRessources.length; //-------------- // Traitement //-------------- // - Réinitialisation du formulaire $("select[name='IdTypeRessource']").val(0); $("input[name='Mot']").val(""); $("select[name='IdLieu']").val(0); $("input[name='Capacite']").val(""); $("#ForSalle").hide(); $("#ForMateriel").hide(); $("#chkSalle").attr("checked", false); $("#chkMateriel").attr("checked", false); $("#FilterType").buttonset("refresh"); // - Réinitialisation de la liste des ressources oOptions = ""; for(var i = 0; i < nbRessources; i++) oOptions += ""; oSelect .find("option") .remove() .end() .append(oOptions); } //Recherche les ressources en fonction des critères function searchRessource() { //-------------- // Variables //-------------- var oSelect = $("select[name='IdSelRessource']"); var oChkSalle = $("#chkSalle").is(":checked"); var oChkMateriel = $("#chkMateriel").is(":checked"); var isSalle = parseInt($("input[name='IsSalle']:checked")[0].value); var idType = parseInt($("select[name='IdTypeRessource']")[0].value); var motRess = $("input[name='Mot']")[0].value; var idLieu = parseInt($("select[name='IdLieu']")[0].value); var capacite = parseInt($("input[name='Capacite']")[0].value); var oOptions = "", lesRessFinal = []; //-------------- // Traitement //-------------- // - Affichage des choix en fonction du type if(oChkSalle) { $("#ForSalle").css("display", "inline"); $("#ForMateriel").hide(); } else if(oChkMateriel) { $("#ForMateriel").css("display", "inline"); $("#ForSalle").hide(); } // - Affine les ressources en fonction des critères lesRessFinal = $.grep(lesRessources, function(oRess) { var condition = (oRess.Emplacement == isSalle); if(!isSalle && idType) condition = condition && (oRess.IdTypeRessource == idType); if(!isSalle && motRess) condition = condition && ($("
").html(oRess.Ressource).text().toLowerCase().indexOf(motRess) != -1); if(isSalle && idLieu) condition = condition && (oRess.IdLieu == idLieu); if(isSalle && !isNaN(capacite)) condition = condition && (oRess.Capacite >= capacite); return condition; }); // - Complétion de la liste des ressources oOptions = ""; for(var i = 0; i < lesRessFinal.length; i++) oOptions += ""; oSelect .find("option") .remove() .end() .append(oOptions); } //Vérifie la disponibilité de la ressource function verifyRessource() { //-------------- // Variables //-------------- var idRess = $("#IdRessource")[0].value; var dtDebut = $("#Chp_DtDebut")[0].value; var dtFin = $("#Chp_DtFin")[0].value; var hrDebut = $("#Chp_HrDebut")[0].value; var hrFin = $("#Chp_HrFin")[0].value; //-------------- // Traitement //-------------- // - Affiche l'image de loading $("#loadVerifyRessource").css("display", "inline"); // - Envoie des données $.post ( 'modules/fonctions/json/dataRessources.php?action=chkConflict', {'IdRessource': idRess, 'StartDate': dtDebut, 'StartHour': hrDebut, 'EndDate': dtFin, 'EndHour': hrFin} ) // - Récupération des erreurs .error(function(data) { var msgErreur = new Array(); var lesErreurs = jQuery.parseJSON(data.responseText); for(var i = 0; i < lesErreurs.length; i++) msgErreur.push(lesErreurs[i]); updateTips(msgErreur); $("#imgVerifyRessource").html("ERROR"); }) // - Compte les mails disponibles .success(function(data) { var lesMsgs = jQuery.parseJSON(data); var nbMails = lesMsgs["Mails"].length; if(nbMails > 0) { updateTips("La ressource est disponible sur zimbra!", "green"); $("#imgVerifyRessource").html("OK"); $("#EstVerifRess")[0].value = 1; } else { updateTips("La ressource n'est pas disponible sur zimbra!"); $("#imgVerifyRessource").html("ERROR"); } }) // - Désactive l'image de loading après chargement .complete(function() { $("#loadVerifyRessource").hide(); }); } //Ouvre le formulaire d'ajout de la ressource function addRessource() { //-------------- // Variables //-------------- var idDialog = "#frmAddRessource"; var idRess = getInputValue("IdSelRessource"); var laRess = $.grep(lesRessources, function(e) { return e.IdRessource == idRess })[0]; var oTBody = $("#RessAffectees tbody")[0]; var contentTR = ""; //-------------- // Traitement //-------------- // - Quitte s'il n'y a pas de ressource sélectionnée if(idRess == 0) { alert("Veuillez sélectionner la ressource!"); return; } // - Charge la ressource s'il n'y a pas de champ if(laRess.NbChamps == 0 && laRess.NbMails == 0 && !laRess.Commentaire) { //Supprime la première ligne si elle existe if($("#RESS_0").length > 0) $("#RESS_0").remove(); // alert("Pas de champs!"); //On crée le contenu du TR contentTR = ""; contentTR += "" + laRess.AbrgService + ""; contentTR += "" + laRess.Ressource + " "; contentTR += ""; contentTR += " X "; contentTR += ""; //On ajoute le TR if($("#RESS_" + idRess).length > 0) $("#RESS_" + idRess).remove(); $(oTBody).append(contentTR); return; } // - Charge le contenu de la boîte de dialogue s'il y a des champs $(idDialog).load("vues/popups/p_frmAddRessource.php?id=" + idRess).dialog ({ modal: true, minWidth: 500, position: ["auto", 210], close: function() { $(idDialog).dialog("destroy"); }, buttons: { "Ajouter": function() { if($("#EstVerifRess")[0].value == 0 && laRess.NbMails > 0) alert("Valider les horaires de réservation de la ressource zimbra, avant de l'ajouter à la manifestation." + "\nPour cela, cliquer sur le bouton \"Vérifier la disponibilité sur zimbra\"!"); else { //Déclaration de variables propres aux champs var infoChps = []; var inputChps = []; var lesErreurs = []; var lblChp, lblValChp, nameChp, valChp, typeChp, isReqChp; //Supprime la première ligne si elle existe if($("#RESS_0").length > 0) $("#RESS_0").remove(); //On parcours la liste des champs $("#dialogReservRess [id^='Chp_']").each( function(index, element) { //Initialisation des variables lblChp = $(element).attr("label"); lblValChp = element.value; nameChp = $(element).attr("name"); valChp = element.value; typeChp = $(element).attr("format"); isReqChp = $(element).attr("required"); //Vérification des erreurs switch(typeChp) { case "number": { //Test des erreurs if(isReqChp && !valChp) lesErreurs.push("Le champ \"" + lblChp + "\" est obligatoire!"); if(valChp && (isNaN(parseInt(valChp)) || parseInt(valChp) <= 0)) lesErreurs.push("Le champ \"" + lblChp + "\" doit être un nombre entier positif!"); //Réaffectation du champ lblValChp = parseInt(valChp); valChp = parseInt(valChp); break; } case "date": { //Test des erreurs if(isReqChp && !valChp) lesErreurs.push("Le champ \"" + lblChp + "\" est obligatoire!"); if(valChp && !estUneDate(valChp)) lesErreurs.push("Le champ \"" + lblChp + "\" doit être une date au format JJ/MM/AAAA!"); break; } case "time": { //Test des erreurs if(isReqChp && !valChp) lesErreurs.push("Le champ \"" + lblChp + "\" est obligatoire!"); if(valChp && !estUneHeure(valChp)) lesErreurs.push("Le champ \"" + lblChp + "\" doit être une heure au format HH:MM!"); break; } case "checkbox": { //Réaffectation du champ lblValChp = $(element).is(":checked") ? "Oui" : "Non"; valChp = $(element).is(":checked") ? 1 : 0; break; } case "text": { //Test des erreurs if(isReqChp && !valChp) lesErreurs.push("Le champ \"" + lblChp + "\" est obligatoire!"); //Réaffectation du champ lblValChp = escapeString(valChp); valChp = escape(valChp); break; } default: { lesErreurs.push("Le champ \"" + lblChp + "\" n'a pas de type!"); break; } } //On conserve la valeur dans un tableau if(isReqChp || valChp) { infoChps.push("" + lblChp + ": " + lblValChp + ""); inputChps.push(""); } } ); //On ajoute le TR s'il n'y a pas d'erreurs if(lesErreurs.length > 0) updateTips(lesErreurs); else { //Image pour zimbra/suppression var imgZimbra = laRess.NbMails > 0 ? "" : ""; var imgDrop = "X"; //On crée le contenu du TR contentTR = ""; contentTR += "" + laRess.AbrgService + ""; contentTR += "" + laRess.Ressource + imgZimbra + " "; contentTR += "" + infoChps.join("
\n") + "\n" + inputChps.join("\n") + ""; contentTR += "" + imgDrop + ""; contentTR += ""; //On ajoute le TR if($("#RESS_" + idRess).length > 0) $("#RESS_" + idRess).remove(); $(oTBody).append(contentTR); //Message de confirmation updateTips("La ressource a été ajoutée à la manifestation!", "green"); setTimeout(function() { $(idDialog).dialog("close"); }, 1000); } } }, "Annuler": function() { $(idDialog).dialog("close"); } } }); } //Charge la liste des ressources function loadSelRessources() { //-------------- // Variables //-------------- var oSelect = $("select[name='Ressource[]']"); var oOptions = ""; var idSrv = $("select[name='SrvRess']")[0].value; //-------------- // Traitement //-------------- // - Affiche l'image de loading $("#loadRessource").css("display", "inline"); // - Envoie des données $.post ( 'modules/fonctions/json/dataRessources.php?action=getLesRessources', {'IdService': idSrv} ) // - Récupération des erreurs .error(function(data) { $("#loadRessource").hide(); }) // - Récupération des résultats .success(function(data) { var lesRessources = jQuery.parseJSON(data); for(var i = 0; i < lesRessources.length; i++) oOptions += ""; oSelect .find("option") .remove() .end() .append(oOptions); }) // - Désactive l'image de loading après chargement .complete(function() { $("#loadRessource").hide(); }); } //******************************* //***** Fiche Manifestation ***** //******************************* //Affiche le label du bouton function toogleAltOn(element) { //Création du label s'il n'existe pas if($(element).has("span").length == 0) $(element).append(" " + lblAlt + ""); //Récupération du libellé dans le alt var lblAlt = $(element).find("img").attr("alt"); //Affichage du bouton $(element).find("span").html(lblAlt); $(element).addClass("btn"); } //Masque le label du bouton function toogleAltOff(element) { $(element).find("span").html(""); $(element).removeClass(); } //Coche les boutons radio du formulaire de validation function chooseAllChk(valForChk) { $("#dialogValidRess input[name^='Chk_']").each( function() { if(this.value == valForChk) $(this).click(); } ); } //Ouvre le formulaire de validation des réservations function validReservations(idManif) { //Variables var idDialog = "#frmValidRessource"; //Charge le contenu de la boîte de dialogue $(idDialog).load("vues/popups/p_frmChkRessource.php?id=" + idManif).dialog ({ modal: true, minWidth: 700, position: ["auto", 125], close: function() { $(idDialog).dialog("destroy"); }, buttons: { "Transmettre": function() { //-------------- // Variables //-------------- // - Déclaration var xReservValid = new Array(); var idRess, idTypeRep, motifRep; // - Récupération des champs $("#dialogValidRess input[name^='Chk_']").each( function() { //Variables idRess = parseInt($(this).attr("name").substring(4)); idTypeRep = parseInt(this.value); motifRep = escape($("#Motif_" + idRess)[0].value); //Ajout dans le tableau if(this.checked) xReservValid.push({'IdRessource': idRess, 'IdTypeReponse': idTypeRep, 'MotifReponse': motifRep}); } ); //-------------- // Traitement //-------------- // - Affiche l'image de loading $("#loadValidRess").css("display", "inline"); // - Envoie des données $.post ( 'modules/fonctions/json/dataRessources.php?action=validRessource', {'IdManifestation': idManif, 'RessourcesValidees': xReservValid} ) // - Récupération des erreurs .error(function(data) { var msgErreur = new Array(); var lesErreurs = jQuery.parseJSON(data.responseText); for(var i = 0; i < lesErreurs.length; i++) msgErreur.push(lesErreurs[i]); updateTips(msgErreur); }) // - Récupération des résultats .success(function(data) { var idTypeRep = parseInt(data); if(idTypeRep) { updateTips("La validation a bien été prise en compte! ", "green"); setTimeout(function() { $(idDialog).dialog("close"); }, 1000); $(location).attr("href", "index.php?uc=manif&action=vdStatut&statut=" + idTypeRep + "&NumsManifs=" + idManif); } else updateTips("La validation n'a pas pu être enregistrée!"); }) // - Désactive l'image de loading après chargement .complete(function() { $("#loadValidRess").hide(); }); }, "Annuler": function() { $(idDialog).dialog("close"); } } }); } //Ouvre la liste des mails envoyés function loadSendMails(idManif) { //Variables var idDialog = "#lstSendEmails"; //Charge le contenu de la boîte de dialogue $(idDialog).load("vues/popups/p_lstSendMail.php?id=" + idManif).dialog ({ modal: true, minWidth: 700, position: ["auto", 125], close: function() { $(idDialog).dialog("destroy"); }, buttons: { "Fermer": function() { $(idDialog).dialog("close"); } } }); } //-------------------------------------------------------- // Fonctions de suppression avec message de confirmation //-------------------------------------------------------- //Message de confirmation avant la réinitialisation du mot de passe function confirmResetPwd(idService) { if(confirm("Êtes-vous sûr de vouloir réinitialiser le mot de passe de ce service?")) { var url = "index.php?uc=param&action=reinitPwdService&id=" + idService; document.location.href = url; } } //Message de confirmation avant l'annulation d'une manifestation function confirmCancelManif(idManif) { if(confirm("Êtes-vous sûr de vouloir annuler cette manifestation?")) { var url = "index.php?uc=manif&action=vdSuppression&id=" + idManif; document.location.href = url; } } //Message de confirmation avant la suppression d'une manifestation function confirmDelManif(idManif) { if(confirm("Êtes-vous sûr de vouloir supprimer cette manifestation? \nAttention, cette action est irréversible!")) { var url = "index.php?uc=manif&action=vdSuppression&id=" + idManif; var idSrv = getVarUrl("Service"); if(idSrv) url += "&Service=" + idSrv; var page = getVarUrl("page"); if(page) url += "&page=" + page; document.location.href = url; } } //Message de confirmation avant la suppression d'un document function confirmDelDocument(idDoc, idManif) { if(confirm("Êtes-vous sûr de vouloir supprimer ce document? \nAttention, cette action est irréversible!")) { var url = "index.php?uc=doc&action=delDocument&id=" + idDoc; if(idManif) url += "&IdManif=" + idManif; document.location.href = url; } } //Suppression d'un type de manifestation function confirmDelTypeManifestation(idTypeManifestation) { if(confirm("Êtes-vous sûr de vouloir supprimer ce type de manifestation? \nAttention, cette action est irréversible!")) { var url = "index.php?uc=param&action=delTypeManif&id=" + idTypeManifestation; var mot = getVarUrl("Mot"); if(mot) url += "&Mot=" + mot; document.location.href = url; } } //Suppression d'une catégorie de ressource function confirmDelTypeRessource(idTypeRessource) { if(confirm("Êtes-vous sûr de vouloir supprimer cette catégorie de ressource? \nAttention, cette action est irréversible!")) { var url = "index.php?uc=param&action=delTypeRess&id=" + idTypeRessource; var mot = getVarUrl("Mot"); if(mot) url += "&Mot=" + mot; var page = getVarUrl("page"); if(page) url += "&page=" + page; document.location.href = url; } } //Suppression d'un bâtiment function confirmDelLieu(idLieu) { if(confirm("Êtes-vous sûr de vouloir supprimer ce bâtiment? \nAttention, cette action est irréversible!")) { var url = "index.php?uc=param&action=delLieu&id=" + idLieu; var mot = getVarUrl("Mot"); if(mot) url += "&Mot=" + mot; var page = getVarUrl("page"); if(page) url += "&page=" + page; document.location.href = url; } } //Suppression d'une ressource function confirmDelRessource(idRessource) { if(confirm("Êtes-vous sûr de vouloir supprimer cette ressource? \nAttention, cette action est irréversible!")) { var url = "index.php?uc=param&action=delRessource&id=" + idRessource; var idSrv = getVarUrl("IdService"); if(idSrv) url += "&IdService=" + idSrv; var idType = getVarUrl("IdTypeRessource"); if(idType) url += "&IdTypeRessource=" + idType; var idLieu = getVarUrl("IdLieu"); if(idLieu) url += "&IdLieu=" + idLieu; var mot = getVarUrl("Mot"); if(mot) url += "&Mot=" + mot; var salle = getVarUrl("Salle"); if(salle) url += "&Salle=" + salle; var materiel = getVarUrl("Materiel"); if(materiel) url += "&Materiel=" + materiel; var actif = getVarUrl("Actif"); if(actif) url += "&Actif=" + actif; var inactif = getVarUrl("Inactif"); if(inactif) url += "&Inactif=" + inactif; var page = getVarUrl("page"); if(page) url += "&page=" + page; document.location.href = url; } } //Suppression d'un service function confirmDelService(idService) { if(confirm("Êtes-vous sûr de vouloir supprimer ce service? \nAttention, cette action est irréversible!")) { var url = "index.php?uc=param&action=delService&id=" + idService; var idSrvParent = getVarUrl("IdSrvParent"); if(idSrvParent) url += "&IdSrvParent=" + idSrvParent; var idProfil = getVarUrl("IdProfil"); if(idProfil) url += "&IdProfil=" + idProfil; var niveau = getVarUrl("Niveau"); if(niveau) url += "&Niveau=" + niveau; var mot = getVarUrl("Mot"); if(mot) url += "&Mot=" + mot; var actif = getVarUrl("Actif"); if(actif) url += "&Actif=" + actif; var inactif = getVarUrl("Inactif"); if(inactif) url += "&Inactif=" + inactif; var page = getVarUrl("page"); if(page) url += "&page=" + page; document.location.href = url; } } //Suppression d'un élu function confirmDelElu(idElu) { if(confirm("Êtes-vous sûr de vouloir supprimer cet élu? \nAttention, cette action est irréversible!")) { var url = "index.php?uc=param&action=delElu&id=" + idElu; var mot = getVarUrl("Mot"); if(mot) url += "&Mot=" + mot; var page = getVarUrl("page"); if(page) url += "&page=" + page; document.location.href = url; } } //Suppression d'un associe function confirmDelAssocie(idAssocie) { if(confirm("Êtes-vous sûr de vouloir supprimer cette personne du groupe évènement? \nAttention, cette action est irréversible!")) { var url = "index.php?uc=param&action=delAssocie&id=" + idAssocie; var mot = getVarUrl("Mot"); if(mot) url += "&Mot=" + mot; document.location.href = url; } } //Suppression d'un organisateur function confirmDelOrganisateur(idOrganisateur) { if(confirm("Êtes-vous sûr de vouloir supprimer cet organisateur? \nAttention, cette action est irréversible!")) { var url = "index.php?uc=param&action=delOrganisateur&id=" + idOrganisateur; var idSrv = getVarUrl("IdService"); if(idSrv) url += "&IdService=" + idSrv; var mot = getVarUrl("Mot"); if(mot) url += "&Mot=" + mot; var actif = getVarUrl("Actif"); if(actif) url += "&Actif=" + actif; var inactif = getVarUrl("Inactif"); if(inactif) url += "&Inactif=" + inactif; var page = getVarUrl("page"); if(page) url += "&page=" + page; document.location.href = url; } } //--------------------------------------------------- // Fonctions Ajax //--------------------------------------------------- //Initialise un objet XmlHttpRequest function newXMLHttpRequest() { //Variables var xhr = null; //Création de l'objet XMLHTTPRequest if(window.XMLHttpRequest || window.ActiveXObject) { if(window.ActiveXObject) { try { xhr = new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) { xhr = new ActiveXObject("Microsoft.XMLHTTP"); } } else xhr = new XMLHttpRequest(); } else { alert("Votre navigateur ne supporte pas l'objet XMLHTTPRequest!"); return null; } return xhr; } //Affiche les messages d'erreur ou de confirmation function updateTips(lesMsgs, color, myClass) { //Variables var tips = (myClass) ? $("." + myClass) : $(".validateTips"); var msgFinale = ""; if(!color) color = "red"; //S'il y a des messages if($.isArray(lesMsgs) && lesMsgs.length > 0) { for(i = 0; i < lesMsgs.length; i++) msgFinale += "
  • " + lesMsgs[i] + "
  • "; msgFinale = ""; } else if(!!lesMsgs.charAt) msgFinale = ""; //typeof(lesMsgs) == "string" //Affichage if(msgFinale) { tips .html(msgFinale) .addClass("ui-state-highlight") .css("color", color); setTimeout(function() {tips.removeClass("ui-state-highlight", 1000);}, 500); } } //Remplit la liste déroulante function setSelectItems(selectName, oData) { //Variables var oSelect = $("select[name=" + selectName + "]"); var oItems = $(oData).find("listItem item"); var oOptions = ""; //Premier élèment oOptions = ""; //Liste des élèments $(oItems).each( function() { oOptions += "