DevEnv nis2-agile and Claude Opus 4.8
36513fa722
[FEAT] PWA installabile Android/iOS conforme AGID (v1.15.0)
...
- manifest.webmanifest + service worker (offline shell, /api network-only, asset stale-while-revalidate)
- set icone (192/512 + maskable + apple-touch + favicon), generate zero-deps (pure Node+zlib)
- tag PWA + viewport viewport-fit=cover (zoom mantenuto, WCAG 1.4.4) in 77 pagine HTML
- AGID/WCAG 2.1 AA: touch target >=44px, orientamento/zoom liberi, safe-area standalone
- generatori riproducibili: scripts/gen-pwa-icons.mjs + scripts/inject-pwa-head.mjs
- bump version 1.14.1 -> 1.15.0
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com >
2026-06-14 21:09:54 +02:00
DevEnv nis2-agile
30cac8479a
[FIX] Modali showModal() invisibili su V2 (solo sfondo grigio): conflitto .modal con Bootstrap Italia
...
BI introduce .modal{display:none;position:fixed} che nascondeva i nostri modali custom (help, genera-AI,
conferme, crea-rischio...) -> si vedeva solo il backdrop grigio. Aggiunto override scoped
'.modal-overlay .modal{display:block;position:relative;...}' in style.css (specificità > BI, caricato dopo).
Verificato headless: modale help display:block height:765 visible:true. Bump style.css?v=20260613b (auto-refetch).
2026-06-14 08:00:13 +02:00
DevEnv nis2-agile
3c484fe604
[FIX] Cache-buster ?v=20260613 sui JS/CSS modificati (help/common/common-bi/i18n/feedback/style/demo) + bump bug-reporter + demo assets
...
Risolve 'le modifiche non si vedono': /js/help.js era senza ?v -> browser serviva la versione cached
vecchia. 281 ref su 57 pagine + injection demo/bug-reporter aggiornate.
2026-06-13 19:17:59 +02:00
DevEnv nis2-agile
e02e0e21d0
[FEAT] licenseExt: sezione dati destinatario pre-compila form + link pronto + modale con recipient data
2026-03-10 12:00:26 +01:00
DevEnv nis2-agile and Claude Sonnet 4.6
cb0988da27
[LICENSE] Gestione licenze marketing + campi commerciali estesi
...
- licenseExt.html: dashboard marketing per generare/gestire licenze
Login JWT super_admin, stats strip (totali/usate/orgs/utenti),
form genera con label/piano/durata/max-aziende/max-utenti/prezzo/reseller,
lista paginata con filtri stato+canale, dettaglio modale, revoca/rigenera,
export CSV e copia token/URL
- Migration 013: invites +max_users_per_org, +price_eur, +reseller_name
organizations +license_max_users (da provisioning)
- InviteController::create() gestisce nuovi campi, validate() espone max_users_per_org
- ServicesController::provision() salva license_max_users nell'org
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-07 15:34:38 +01:00