added drag and photos

This commit is contained in:
2025-11-22 13:35:12 +01:00
parent eeb1d0d5de
commit 8edccbdfef
21 changed files with 2006 additions and 121 deletions
+75 -2
View File
@@ -203,6 +203,16 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && !empty($_POST['action'])) {
font-size: 0.75rem !important;
padding: 0.15rem 0.3rem !important;
}
.line-filter-btn {
font-size: 0.9rem;
padding: 0.375rem 0.75rem;
}
.line-filter-btn.active {
background-color: #0d6efd !important;
color: white !important;
}
</style>
</head>
@@ -213,9 +223,33 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && !empty($_POST['action'])) {
<div class="page-wrapper">
<div class="page-content">
<div class="card">
<div class="card-header d-flex justify-content-between align-items-center">
<div class="card-header d-flex justify-content-between align-items-center flex-wrap gap-3">
<h5 class="mb-0">Programmazione Produzione</h5>
<div>
<div class="d-flex align-items-center gap-2 flex-wrap">
<!-- FILTRO STATUS (dropdown) -->
<div style="min-width:200px;">
<select id="filterStatus"
class="form-select form-select-sm"
style="width:200px;">
<option value="">Tutti gli status</option>
<?php foreach ($status_list as $s): ?>
<option value="<?= $s['id'] ?>">
<?= htmlspecialchars($s['nome']) ?>
</option>
<?php endforeach; ?>
</select>
</div>
<!-- BOTTONI FILTRO LINEA -->
<div class="btn-group me-3" role="group">
<button type="button" class="btn btn-outline-primary line-filter-btn active" data-line="">Tutte</button>
<?php foreach ($linee as $l): ?>
<button type="button" class="btn btn-outline-primary line-filter-btn" data-line="<?= $l['id'] ?>">
<?= htmlspecialchars($l['name']) ?>
</button>
<?php endforeach; ?>
</div>
<button class="btn btn-primary" data-bs-toggle="modal" data-bs-target="#modalNuovo">Aggiungi</button>
<button class="btn btn-secondary" onclick="location.href='production_dashboard.php'">Torna</button>
</div>
@@ -472,6 +506,45 @@ if ($_SERVER['REQUEST_METHOD'] === 'POST' && !empty($_POST['action'])) {
}
});
// FILTRO RAPIDO PER LINEA CON BOTTONI
$(document).on('click', '.line-filter-btn', function() {
$('.line-filter-btn').removeClass('active').addClass('btn-outline-primary');
$(this).addClass('active').removeClass('btn-outline-primary');
const lineaId = $(this).data('line') || '';
table.column(3).search(lineaId ? '^' + lineaId + '$' : '', true, false).draw();
});
// FILTRO STATUS (dropdown)
$('#filterStatus').on('change', function() {
const statusId = $(this).val() || '';
// colonna STATUS = indice 13
table.column(13).search(
statusId ? '^' + statusId + '$' : '',
true, // usa regex
false // no smart search
).draw();
});
// Aggiungi al bottone "Pulisci" anche la rimozione filtro linea
$(document).on('click', '.btn-clear-filters', function() {
table.columns().search('').draw();
$('.filters-row input[type="text"]').val('');
$('.filters-row select').val('').trigger('change');
// reset dropdown status
$('#filterStatus').val('').trigger('change');
$('.filters-row input[placeholder*="aaaa"]').each(function() {
const fp = $(this).data('flatpickr');
if (fp) fp.clear();
});
$('.dataTables_filter input').val('');
// Reset bottoni linea
$('.line-filter-btn').removeClass('active').addClass('btn-outline-primary');
$('.line-filter-btn[data-line=""]').addClass('active');
});
// --- FUNZIONE PULISCI TUTTI I FILTRO ---
$(document).on('click', '.btn-clear-filters', function() {
// Svuota tutti i filtri DataTables