/* NAMESPACE */ var Adapt = {}; /* SCOPE */ (function(){ /* Form (Class) */ Adapt.Form = { /* Fonction PermuteChk() * * @string : Element Id * * Permute le cochage d'un checkbox */ PermuteChkBox:function(Id) { $(Id).checked = !$(Id).checked; return $(Id).checked; }, /* Fonction CleanedParam() * * @string : Form Id * @object : Options * { * "ReturnType" : @Enum (Obj,Serial) : Type de retour (NC = Serial) * } * * Retourne sous forme de tableau ({k1:v1,k2:v2}) ou serialisée (k1=v1&k2=v2) * la liste des paramètres d'un formulaire */ CleanedParam:function() { // Récupération de l'id du formulaire var IdForm = arguments[0]; // Récupération des options var Options = arguments[1] || {ReturnType : 'Serial'}; // Récupération du type de retour var ReturnType = Options.ReturnType || "Serial"; // Test de l'id du formulaire if(!Object.isElement($(IdForm))) { Adapt.Debug.TraceErr("CleanedParam","L'élément ayant l'id '" + IdForm + "' est introuvable."); return; } // Récupération des paramètres du formulaire var ObjResult = {}; var SerialResult = Array(); var Params = $(IdForm).serialize(true); // Parcours des paramètres du formulaire for(var K in Params) { // Récupération d'une éventuelle valeur par défaut var DefVal = $$("#" + IdForm + " [name='" + K + "']")[0].readAttribute('defval'); // Si le paramètre n'est pas vide et qu'il n'a pas sa valeur par défaut pour valeur if(!Adapt.String.Empty(Adapt.String.Trim(Params[K])) && (Adapt.String.Empty(DefVal) || DefVal!= Params[K])) { // Ajout de la valeur à ObjResult ObjResult[K] = Adapt.String.Trim(Params[K]); // Ajout de la valeur à SerialResult SerialResult.push(K + "=" + Adapt.String.Trim(Params[K])); } } // Retourne le résultat return (ReturnType=="Serial") ? SerialResult.join("&"):ObjResult; }, /* Fonction UpdateMiniMoteur() * * @string : IdForm * @object : Options * { * "UpdateHash" : @bool : Mise à jour du hash (defaut : false) * "Callback" : @object : Fonction de call back * } * * Mise à jour du minimoteur */ UpdateMiniMoteur:function() { // Récupération de l'id du formulaire var IdForm = arguments[0] || "FormMiniMoteur"; // Récupération des options var Options = arguments[1] || {}; // Récupération du type de retour var UpdateHash = Options.UpdateHash || false; // Prise en compte des paramètres en hash var ParamHash = Options.ParamHash || false; // Récupération du type de retour var CallBack = Options.CallBack || null; // Récupération de toutes les valeurs // Tableau final des paramètres var TabParam = {}; // Parcours des paramètres en Get for(var i=0;i1) { // Si la clé et la valeur ne sont pas vide if(!Adapt.String.Empty(TabKV[0]) && !Adapt.String.Empty(TabKV[1])) { // Ajout du paramètre TabParam[TabKV[0]] = decodeURI(TabKV[1]); } } } // Si le tableau de paramètre supplémentaire // du mode liste en ajax existe if(typeof(TabParamSupListeAjax)!="undefined") { // Parcours des paramètres supplémentaires for(P in TabParamSupListeAjax) { // Si la clé et la valeur ne sont pas vide if(!Adapt.String.Empty(P) && !Adapt.String.Empty(TabParamSupListeAjax[P])) { // Ajout du paramètre TabParam[P] = TabParamSupListeAjax[P]; } } } // Parcours des paramètres for(P in TabParam) { // Test l'existence de l'élément var TabElement = $$("#" + IdForm + " [name='" + P + "']"); // Si au moins 1 élement trouvé if(!Adapt.String.Empty(TabElement.length)) { // Parcours des éléments trouvés for(var i=0;i