= _("Tables de Référence") ?>
+= _("Configuration des listes de données du système") ?>
++ = _("Filtrer par Module") ?> +
+| = _("Sélectionner une option") ?> | -- - - - - - - - - - - - - - - - - | -
|
-
-
-
- |
-
diff --git a/Js/fonctions.js b/Js/fonctions.js index 3f0fbbde..ab43d761 100755 --- a/Js/fonctions.js +++ b/Js/fonctions.js @@ -48254,36 +48254,60 @@ function cocherDecocherUn(fichier_lister,id){ } -function filtreTableReference(numeroTable){ +function filtreTableReference(numeroTable) { + const racineWeb = $("#racineWeb").val(); + const codeLangue = $("#codeLangue").val(); + const div_liste_tables = $("#div_listetables"); - donnees = "numeroTable="+numeroTable; - - $("#div_lister_table").html(""); - $('#div_fichiers_table').html(""); - $('#div_entete_table').html(""); - - //alert(donnees); - //return; - $.ajax({ - url: $("#racineWeb").val()+"Ajaxfiltretablesreference/", - type : 'post', - data: donnees, - error: function(errorData) { - // alert("Erreur : "+errorData); - }, - success: function(data) { - // alert("Success : "+data); - $("#div_listetables").html(data); - $("#listetables").selectpicker(); - - }, - complete: function() { - - } - }); - + // 1. Réinitialisation complète des zones de travail + // On vide tout pour que l'utilisateur sache qu'il change de contexte + $("#div_lister_table").html(""); + $('#div_fichiers_table').html(""); + $('#div_entete_table').html(""); + $('#div_maj_table').html(""); // On vide aussi la zone de saisie/modification + + // 2. Préparation des données (Format Objet) + const donnees = { numeroTable: numeroTable }; + + // 3. Effet de chargement sur le menu déroulant + div_liste_tables.css('opacity', '0.5'); + + // 4. Appel AJAX + $.ajax({ + url: racineWeb + "Ajaxfiltretablesreference/", + type: 'post', + data: donnees, + success: function(data) { + // Mise à jour du sélecteur de tables + div_liste_tables.html(data); + + // Ré-initialisation du SelectPicker (Bootstrap-select) + // setTimeout permet de s'assurer que le DOM est prêt + setTimeout(function() { + const $select = $("#listetables"); + $select.selectpicker('refresh'); + $select.selectpicker('focus'); + }, 50); + + // Notification discrète (Optionnel) + if (typeof toastr !== 'undefined') { + let msg = (codeLangue === "en_US") ? "Tables updated" : "Tables mises à jour"; + toastr.info(msg); + } + }, + error: function(xhr) { + console.error("Erreur de filtrage :", xhr.statusText); + let errorMsg = (codeLangue === "en_US") ? "Error loading tables" : "Erreur lors du chargement des tables"; + alert_ebene(errorMsg, errorMsg); + }, + complete: function() { + // Rétablir l'opacité + div_liste_tables.css('opacity', '1'); + } + }); } + function supprimer_choix(){ var fichier_lister = $('#fichier_lister').val(); diff --git a/Vue/Ajaxfiltretablesreference/index.php b/Vue/Ajaxfiltretablesreference/index.php index b2c3e888..3c8a125b 100755 --- a/Vue/Ajaxfiltretablesreference/index.php +++ b/Vue/Ajaxfiltretablesreference/index.php @@ -1,3 +1,23 @@ - \ No newline at end of file +
= _("Configuration des listes de données du système") ?>
+| = _("Sélectionner une option") ?> | -- - - - - - - - - - - - - - - - - | -
|
-
-
-
- |
-