added additional field in parts template e layout

This commit is contained in:
2026-03-02 14:37:20 +01:00
parent 9af0df3cca
commit c9122774b1
15 changed files with 741 additions and 196 deletions
@@ -913,12 +913,22 @@ $xlsHeaders = $template['xls_headers'] ? json_decode($template['xls_headers'], t
cb.checked = cb.dataset.originalChecked === 'true';
});
});
} else if (event.target.classList.contains('visible-import-checkbox')) {
} else if (event.target.classList.contains('visible-parts-checkbox')) {
const checkbox = event.target;
const mappingId = checkbox.dataset.mappingId;
const value = checkbox.checked ? 1 : 0;
fetch('update_visible_import.php', {
// salva stato per rollback
const prevChecked = checkbox.checked;
// ✅ UI: se sto mettendo a 1, tolgo la spunta a tutti gli altri SUBITO
if (value === 1) {
document.querySelectorAll('.visible-parts-checkbox').forEach(cb => {
if (cb !== checkbox) cb.checked = false;
});
}
fetch('update_visible_parts.php', {
method: 'POST',
headers: {
'Content-Type': 'application/json'
@@ -929,16 +939,25 @@ $xlsHeaders = $template['xls_headers'] ? json_decode($template['xls_headers'], t
value: value
})
})
.then(response => response.json())
.then(r => r.json())
.then(data => {
if (!data.success) {
console.error("❌ Error updating is_visible_import:", data.message);
checkbox.checked = !checkbox.checked;
console.error("❌ Error updating is_visible_parts:", data.message);
// rollback UI
checkbox.checked = !prevChecked;
// se avevo tolto le spunte agli altri, ricarico per riallineare la UI al DB
// (semplice e safe)
location.reload();
}
})
.catch(error => {
console.error("❌ Fetch error:", error);
checkbox.checked = !checkbox.checked;
// rollback UI
checkbox.checked = !prevChecked;
location.reload();
});
} else if (event.target.classList.contains('visible-parts-checkbox')) {
const checkbox = event.target;