ser
This commit is contained in:
parent
5a50a1c92c
commit
dec85bf5f1
|
|
@ -86194,7 +86194,10 @@ function affiche_pays_territoire() {
|
|||
|
||||
// On attend que le DOM soit prêt pour initialiser DataTables
|
||||
setTimeout(() => {
|
||||
initSmartTable('.datatable-inter', titreExport, [0, 'asc']);
|
||||
// Tableau de gauche (Hors territoire)
|
||||
initSmartTable('#div_sans_territoire table', 'Pays à ajouter', [0, 'asc'], false);
|
||||
// Tableau de droite (Dans territoire)
|
||||
initSmartTable('#div_avec_seuil table', 'Pays inclus', [1, 'asc'], false);
|
||||
}, 100);
|
||||
},
|
||||
error: function() {
|
||||
|
|
@ -92286,8 +92289,9 @@ function enregistrer_modif_parametres_med()
|
|||
* @param {string} selector - Sélecteur CSS de la table
|
||||
* @param {string} pageTitle - Titre pour les exports PDF/Excel
|
||||
* @param {boolean|array} defaultOrder - Exemple: [1, 'desc'] ou false pour garder l'ordre serveur
|
||||
* @param {boolean} showButtons - Affiche ou masque les boutons d'export (Défaut: true)
|
||||
*/
|
||||
function initSmartTable(selector = '.datatable-inter', pageTitle = 'Export Données', defaultOrder = false) {
|
||||
function initSmartTable(selector = '.datatable-inter', pageTitle = 'Export Données', defaultOrder = false, showButtons = true) {
|
||||
if ($(selector).length === 0) return;
|
||||
|
||||
var hasGlobalSearch = $('#globalSearch').length > 0;
|
||||
|
|
@ -92297,25 +92301,25 @@ function initSmartTable(selector = '.datatable-inter', pageTitle = 'Export Donn
|
|||
}
|
||||
|
||||
// Modification du DOM :
|
||||
// On enveloppe 'f' (Filter) dans une div avec 'ms-auto' pour le pousser à droite
|
||||
// Si showButtons est false, on retire "B" (Buttons) de la structure
|
||||
// On utilise "ms-auto" pour pousser "f" (Filter) à droite même si "B" est absent
|
||||
var domStructure = hasGlobalSearch
|
||||
? '<"d-flex align-items-center justify-content-start p-3 border-bottom"B>t<"d-flex justify-content-between align-items-center p-3 bg-light"ip>'
|
||||
: '<"d-flex align-items-center p-3 border-bottom"B<"ms-auto"f>>t<"d-flex justify-content-between align-items-center p-3 bg-light"ip>';
|
||||
: '<"d-flex align-items-center p-3 border-bottom"' + (showButtons ? 'B' : '') + '<"ms-auto"f>>t<"d-flex justify-content-between align-items-center p-3 bg-light"ip>';
|
||||
|
||||
var orderConfig = (defaultOrder === false) ? [] : defaultOrder;
|
||||
|
||||
var table = $(selector).DataTable({
|
||||
"dom": domStructure,
|
||||
"order": orderConfig,
|
||||
"buttons": [
|
||||
// On n'active les boutons que si showButtons est à true
|
||||
"buttons": showButtons ? [
|
||||
{
|
||||
extend: 'excelHtml5',
|
||||
text: '<i class="fas fa-file-excel me-2"></i>Excel',
|
||||
className: 'btn btn-success btn-sm fw-bold border-0 shadow-sm px-3',
|
||||
title: pageTitle, // Identique au PDF
|
||||
exportOptions: {
|
||||
columns: ':not(.no-export)' // Exclut les colonnes avec la classe .no-export
|
||||
}
|
||||
title: pageTitle,
|
||||
exportOptions: { columns: ':not(.no-export)' }
|
||||
},
|
||||
{
|
||||
extend: 'pdfHtml5',
|
||||
|
|
@ -92324,33 +92328,29 @@ function initSmartTable(selector = '.datatable-inter', pageTitle = 'Export Donn
|
|||
title: pageTitle,
|
||||
orientation: 'landscape',
|
||||
pageSize: 'A4',
|
||||
exportOptions: {
|
||||
columns: ':not(.no-export)' // Exclut les colonnes avec la classe .no-export
|
||||
},
|
||||
customize: function(doc) {
|
||||
// Force la largeur du tableau à 100% (le '*' signifie largeur automatique répartie)
|
||||
doc.content[1].table.widths = Array(doc.content[1].table.body[0].length).fill('*');
|
||||
|
||||
// Optionnel : Aligner le texte au centre pour toutes les cellules du PDF
|
||||
doc.styles.tableHeader.alignment = 'center';
|
||||
doc.defaultStyle.alignment = 'center';
|
||||
}
|
||||
exportOptions: { columns: ':not(.no-export)' },
|
||||
customize: function(doc) {
|
||||
if (doc.content[1].table) {
|
||||
doc.content[1].table.widths = Array(doc.content[1].table.body[0].length).fill('*');
|
||||
}
|
||||
doc.styles.tableHeader.alignment = 'center';
|
||||
doc.defaultStyle.alignment = 'center';
|
||||
}
|
||||
}
|
||||
],
|
||||
] : [],
|
||||
"language": {
|
||||
"url": "//cdn.datatables.net/plug-ins/1.13.6/i18n/fr-FR.json",
|
||||
"search": "", // On vide le texte "Rechercher :" pour un look plus moderne
|
||||
"searchPlaceholder": "Rechercher..."
|
||||
"search": "",
|
||||
"searchPlaceholder": "Filtrer..."
|
||||
},
|
||||
"pageLength": 10,
|
||||
"autoWidth": false,
|
||||
"drawCallback": function() {
|
||||
if (!hasGlobalSearch) {
|
||||
// Style de l'input de recherche
|
||||
$('.dataTables_filter input')
|
||||
.addClass('form-control form-control-sm shadow-none border-primary-subtle')
|
||||
.css({
|
||||
'width': '250px',
|
||||
'width': '200px',
|
||||
'border-radius': '20px',
|
||||
'padding-left': '15px'
|
||||
});
|
||||
|
|
@ -92368,7 +92368,6 @@ function initSmartTable(selector = '.datatable-inter', pageTitle = 'Export Donn
|
|||
return table;
|
||||
}
|
||||
|
||||
|
||||
function loadMessageSection(section) {
|
||||
let url = "";
|
||||
let target = "#content-" + section;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user