From 4d9153b36f14047e03d28649094a26c7656c900a Mon Sep 17 00:00:00 2001 From: DevEnv nis2-agile Date: Sun, 31 May 2026 14:40:03 +0200 Subject: [PATCH] [FIX] supply-chain: selettore modale errato (#app-modal -> #modal-overlay) Bug live introdotto in v1.10.0: le viste Categorie e Template usavano querySelector('#app-modal .modal-body') ma showModal (common.js) crea l'overlay con id='modal-overlay'. Il selettore restituiva null -> le modali non si popolavano (lista template/categorie vuota dopo il loading). Corretto a '#modal-overlay .modal-body' (5 occorrenze). Trovato durante il test multi-agente. Inline JS validato. version 1.10.2. Co-Authored-By: Claude Opus 4.8 --- public/supply-chain.html | 8 ++++---- public/version.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/public/supply-chain.html b/public/supply-chain.html index a5f8533..d4e67e9 100644 --- a/public/supply-chain.html +++ b/public/supply-chain.html @@ -1406,13 +1406,13 @@ const list = (res.success && res.data) ? res.data : []; renderTemplatesModal(list); } catch (e) { - const b = document.querySelector('#app-modal .modal-body'); + const b = document.querySelector('#modal-overlay .modal-body'); if (b) b.innerHTML = '

Errore di connessione.

'; } } function renderTemplatesModal(templates) { - const b = document.querySelector('#app-modal .modal-body'); + const b = document.querySelector('#modal-overlay .modal-body'); if (!b) return; if (!templates.length) { b.innerHTML = '

Nessun template questionario per questa organizzazione.

'; @@ -1432,7 +1432,7 @@ } async function viewTemplate(id) { - const b = document.querySelector('#app-modal .modal-body'); + const b = document.querySelector('#modal-overlay .modal-body'); if (b) b.innerHTML = '
Caricamento domande...
'; try { const res = await api.getQuestionnaireTemplate(id); @@ -1444,7 +1444,7 @@ } function renderTemplateDetail(tpl) { - const b = document.querySelector('#app-modal .modal-body'); + const b = document.querySelector('#modal-overlay .modal-body'); if (!b) return; const qs = tpl.questions || []; const qHtml = qs.length ? qs.map((q, i) => ` diff --git a/public/version.json b/public/version.json index 4f80a28..9a0c9e3 100644 --- a/public/version.json +++ b/public/version.json @@ -1 +1 @@ -{"version":"1.10.1","build":"2026-05-31-v1.10.1","date":"2026-05-31","changelog":"Supply chain UI: chiavi i18n IT/EN (sp.*) per pulsanti modulo fornitori; import CSV mostra il dettaglio delle righe scartate (errors[]) e tiene aperta la modale in caso di errori. Completamento Fase 1 modulo questionari fornitori."} +{"version":"1.10.2","build":"2026-05-31-v1.10.2","date":"2026-05-31","changelog":"Fix selettore modale (modal-overlay) per le viste Categorie e Template fornitori, che non si popolavano. Completamento UI Fase 1 modulo questionari fornitori."}