This commit is contained in:
2026-04-09 15:26:23 +00:00
parent b75875753c
commit 89b0ca3817
2 changed files with 89 additions and 74 deletions

View File

@@ -92914,7 +92914,7 @@ async function detail_baremeacte_lettre_cle(idInitial, lettre) {
* * @param {number|string} idInitial - ID du barème initial (idActesbaremeinitiallettrecle)
* @param {string} lettre - La lettre clé concernée (ex: 'K', 'B', 'V')
*/
async function chargerContenuDetailActe(idInitial, lettre) {
async function chargerContenuDetailActe(idInitial, lettre, mode = 'complet') {
const racineWeb = document.getElementById("racineWeb").value;
const codeLangue = document.getElementById("codeLangue")?.value || 'fr_FR';
const modalContainer = document.getElementById("div_detail_bareme_actes");
@@ -92926,14 +92926,26 @@ async function chargerContenuDetailActe(idInitial, lettre) {
try {
const response = await fetch(url, { method: "POST", body: formData });
if (!response.ok) throw new Error(`Erreur réseau : ${response.status}`);
const html = await response.text();
// Injection du HTML
modalContainer.innerHTML = html;
// Réinitialisation de DataTable
if (mode === 'complet') {
// OUVERTURE INITIALE : On injecte tout le HTML (Structure + Tableau)
modalContainer.innerHTML = html;
} else {
// ACTUALISATION APRÈS SUPPRESSION :
// On extrait seulement la zone du tableau du HTML reçu
const parser = new DOMParser();
const doc = parser.parseFromString(html, 'text/html');
const nouveauContenuTableau = doc.getElementById('div_table_detail_lettrecle');
if (nouveauContenuTableau) {
// On ne remplace que l'intérieur de la zone cible
const zoneCible = document.getElementById('div_table_detail_lettrecle');
zoneCible.innerHTML = nouveauContenuTableau.innerHTML;
}
}
// Réinitialisation de DataTable (Indispensable après injection)
setTimeout(() => {
if ($.fn.DataTable.isDataTable('#table_detail_actes')) {
$('#table_detail_actes').DataTable().destroy();
@@ -92946,14 +92958,13 @@ async function chargerContenuDetailActe(idInitial, lettre) {
: "//cdn.datatables.net/plug-ins/1.13.6/i18n/fr-FR.json"
},
"pageLength": 10,
"responsive": true,
"dom": "<'row mb-3'<'col-sm-12 col-md-6'l><'col-sm-12 col-md-6'f>>rtip"
"dom": "<'row mb-3'<'col-sm-12 col-md-6'l><'col-sm-12 col-md-6'f>>rtip",
"responsive": true
});
}, 50); // Délai réduit pour plus de réactivité
}, 100);
} catch (error) {
console.error("Erreur chargement :", error);
alert_ebene("Erreur de chargement", "Loading error");
console.error("Erreur de rafraîchissement :", error);
}
}
@@ -92982,7 +92993,7 @@ function supprimer_baremeacte_lettre_cle_detail(adminProd, idActe) {
const lettre = $("#lettreCle").val();
// ON ACTUALISE JUSTE LE TABLEAU
chargerContenuDetailActe(idInitial, lettre);
chargerContenuDetailActe(idInitial, lettre, 'refresh');
}
});
}