[FIX] Pannello ARIA: chiusura (X+Esc) robusta + niente sovrapposizione ai pallini (stile TRPG)
Aprendo il pannello ARIA ora si nascondono nx-bar (campana/supporto) + ai-chat-fab -> niente overlap; la X e Esc chiudono e ripristinano i pallini. Prima la X era fragile e il pannello copriva i bottoni. Bump common.js?v=20260613d. (TRPG usa ai-assistant.js con stesso pattern toggle/hide.)
This commit is contained in:
@@ -58,7 +58,7 @@
|
||||
|
||||
<!-- Stessa logica della app: api.js + common.js (helper) + common-bi.js (override BI) -->
|
||||
<script src="js/api.js?v=20260613"></script>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<script src="js/common-bi.js?v=20260613"></script>
|
||||
<script>
|
||||
// Renderizza la sidebar BI (loadSidebar è stato ridefinito da common-bi.js)
|
||||
|
||||
@@ -140,7 +140,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
+1
-1
@@ -140,7 +140,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -305,7 +305,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -305,7 +305,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -135,7 +135,7 @@
|
||||
</div>
|
||||
|
||||
<script src="../js/api.js?v=20260613"></script>
|
||||
<script src="../js/common.js?v=20260613c"></script>
|
||||
<script src="../js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -135,7 +135,7 @@
|
||||
</div>
|
||||
|
||||
<script src="../js/api.js?v=20260613"></script>
|
||||
<script src="../js/common.js?v=20260613c"></script>
|
||||
<script src="../js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -157,7 +157,7 @@
|
||||
</div>
|
||||
|
||||
<script src="../js/api.js?v=20260613"></script>
|
||||
<script src="../js/common.js?v=20260613c"></script>
|
||||
<script src="../js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -157,7 +157,7 @@
|
||||
</div>
|
||||
|
||||
<script src="../js/api.js?v=20260613"></script>
|
||||
<script src="../js/common.js?v=20260613c"></script>
|
||||
<script src="../js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -1076,7 +1076,7 @@
|
||||
</div>
|
||||
|
||||
<script src="js/api.js?v=20260613"></script>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<script src="js/i18n.js?v=20260613"></script>
|
||||
<script src="js/help.js?v=20260613"></script>
|
||||
<script>
|
||||
|
||||
@@ -142,7 +142,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -142,7 +142,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -354,7 +354,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
+1
-1
@@ -354,7 +354,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -337,7 +337,7 @@
|
||||
</div>
|
||||
|
||||
<script src="js/api.js?v=20260613"></script>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle + override sidebar BI (common-bi.js dopo common.js: ridefinisce solo loadSidebar) -->
|
||||
<script src="vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script>if (window.bootstrap && bootstrap.loadFonts) { bootstrap.loadFonts('vendor/bootstrap-italia/dist/fonts'); }</script>
|
||||
|
||||
@@ -337,7 +337,7 @@
|
||||
</div>
|
||||
|
||||
<script src="js/api.js?v=20260613"></script>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle + override sidebar BI (common-bi.js dopo common.js: ridefinisce solo loadSidebar) -->
|
||||
<script src="vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
<script>if (window.bootstrap && bootstrap.loadFonts) { bootstrap.loadFonts('vendor/bootstrap-italia/dist/fonts'); }</script>
|
||||
|
||||
@@ -370,7 +370,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -370,7 +370,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -131,7 +131,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -131,7 +131,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -1130,7 +1130,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (accordion) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI. -->
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
|
||||
+1
-1
@@ -1130,7 +1130,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (accordion) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI. -->
|
||||
<script src="/vendor/bootstrap-italia/dist/js/bootstrap-italia.bundle.min.js"></script>
|
||||
|
||||
@@ -339,7 +339,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -339,7 +339,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -897,7 +897,7 @@ curl -H <span class="str">"X-API-Key: nis2_TUA_CHIAVE"</span> \
|
||||
|
||||
</main>
|
||||
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<script src="js/i18n.js?v=20260613"></script>
|
||||
<script>
|
||||
function showTab(id) {
|
||||
|
||||
+1
-1
@@ -172,7 +172,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
+1
-1
@@ -172,7 +172,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
+16
-6
@@ -994,6 +994,20 @@ function switchLang(lang) {
|
||||
});
|
||||
}
|
||||
|
||||
// Stile TRPG: aprendo il pannello ARIA nascondiamo gli altri pallini (niente
|
||||
// sovrapposizione); la × / Esc li ripristinano chiudendo.
|
||||
function _siblingFabs(hidden) {
|
||||
['nx-bar', 'ai-chat-fab'].forEach(function (id) {
|
||||
var el = document.getElementById(id);
|
||||
if (el) el.style.display = hidden ? 'none' : 'flex';
|
||||
});
|
||||
}
|
||||
function closePanel() { panel.style.display = 'none'; _siblingFabs(false); }
|
||||
function openPanel() { panel.style.display = 'flex'; _siblingFabs(true); render(); }
|
||||
document.addEventListener('keydown', function (e) {
|
||||
if (e.key === 'Escape' && panel.style.display === 'flex') closePanel();
|
||||
});
|
||||
|
||||
function render() {
|
||||
var list = history.map(function (m) {
|
||||
var isUser = m.role === 'user';
|
||||
@@ -1031,9 +1045,7 @@ function switchLang(lang) {
|
||||
+ '<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><line x1="22" y1="2" x2="11" y2="13"/><polygon points="22 2 15 22 11 13 2 9 22 2"/></svg>'
|
||||
+ '</button>'
|
||||
+ '</form>';
|
||||
document.getElementById('ai-chat-close').onclick = function () {
|
||||
panel.style.display = 'none';
|
||||
};
|
||||
document.getElementById('ai-chat-close').onclick = closePanel;
|
||||
document.getElementById('ai-chat-form').onsubmit = onSubmit;
|
||||
var msgs = document.getElementById('ai-chat-msgs');
|
||||
msgs.scrollTop = msgs.scrollHeight;
|
||||
@@ -1077,9 +1089,7 @@ function switchLang(lang) {
|
||||
}
|
||||
|
||||
fab.onclick = function () {
|
||||
var visible = panel.style.display === 'flex';
|
||||
panel.style.display = visible ? 'none' : 'flex';
|
||||
if (!visible) render();
|
||||
if (panel.style.display === 'flex') { closePanel(); } else { openPanel(); }
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -138,7 +138,7 @@
|
||||
</div>
|
||||
|
||||
<!-- Stessa logica JS della pagina live (parita' funzionale assoluta, zero backend). -->
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI. -->
|
||||
|
||||
+1
-1
@@ -138,7 +138,7 @@
|
||||
</div>
|
||||
|
||||
<!-- Stessa logica JS della pagina live (parita' funzionale assoluta, zero backend). -->
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI. -->
|
||||
|
||||
@@ -82,7 +82,7 @@
|
||||
|
||||
<!-- Stessa logica della login attuale: ZERO modifiche backend -->
|
||||
<script src="js/api.js?v=20260613"></script>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<script>
|
||||
if (api.isAuthenticated()) { window.location.href = 'dashboard-bi.html'; }
|
||||
|
||||
|
||||
+1
-1
@@ -82,7 +82,7 @@
|
||||
|
||||
<!-- Stessa logica della login attuale: ZERO modifiche backend -->
|
||||
<script src="js/api.js?v=20260613"></script>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<script>
|
||||
if (api.isAuthenticated()) { window.location.href = 'dashboard.html'; }
|
||||
|
||||
|
||||
@@ -411,6 +411,6 @@ curl https://nis2.agile.software/api/services/status</pre>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
@@ -100,7 +100,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -100,7 +100,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -425,7 +425,7 @@
|
||||
|
||||
<!-- Stessa logica della onboarding.html: ZERO modifiche backend -->
|
||||
<script src="js/api.js?v=20260613"></script>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<script>
|
||||
// ── Auth check ──────────────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
@@ -425,7 +425,7 @@
|
||||
|
||||
<!-- Stessa logica della onboarding.html: ZERO modifiche backend -->
|
||||
<script src="js/api.js?v=20260613"></script>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<script>
|
||||
// ── Auth check ──────────────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
@@ -321,7 +321,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -321,7 +321,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -256,7 +256,7 @@
|
||||
|
||||
<!-- Stessa logica della register.html: ZERO modifiche backend -->
|
||||
<script src="js/api.js?v=20260613"></script>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<script>
|
||||
if (api.isAuthenticated()) { window.location.href = 'dashboard-bi.html'; }
|
||||
|
||||
|
||||
@@ -256,7 +256,7 @@
|
||||
|
||||
<!-- Stessa logica della register.html: ZERO modifiche backend -->
|
||||
<script src="js/api.js?v=20260613"></script>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<script>
|
||||
if (api.isAuthenticated()) { window.location.href = 'dashboard.html'; }
|
||||
|
||||
|
||||
@@ -431,7 +431,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
+1
-1
@@ -431,7 +431,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -482,7 +482,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
+1
-1
@@ -482,7 +482,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -660,7 +660,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -660,7 +660,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -153,7 +153,7 @@
|
||||
</div>
|
||||
|
||||
<script src="js/api.js?v=20260613"></script>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<script>
|
||||
// ── Auth check ───────────────────────────────────────────
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
@@ -465,7 +465,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -465,7 +465,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -280,7 +280,7 @@
|
||||
</div>
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -195,7 +195,7 @@
|
||||
<!-- Report Detail Modal handled by common.js showModal -->
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -195,7 +195,7 @@
|
||||
<!-- Report Detail Modal handled by common.js showModal -->
|
||||
|
||||
<script src="/js/api.js?v=20260613"></script>
|
||||
<script src="/js/common.js?v=20260613c"></script>
|
||||
<script src="/js/common.js?v=20260613d"></script>
|
||||
<!-- Bootstrap Italia bundle (componenti) + override sidebar BI (common-bi.js).
|
||||
common-bi.js va DOPO common.js: ridefinisce solo loadSidebar() con markup BI,
|
||||
riusando tutti gli helper di common.js (zero backend). -->
|
||||
|
||||
@@ -307,7 +307,7 @@
|
||||
</div>
|
||||
|
||||
<script src="js/api.js?v=20260613"></script>
|
||||
<script src="js/common.js?v=20260613c"></script>
|
||||
<script src="js/common.js?v=20260613d"></script>
|
||||
<script src="js/i18n.js?v=20260613"></script>
|
||||
<script>
|
||||
if (!checkAuth()) throw new Error('Not authenticated');
|
||||
|
||||
Reference in New Issue
Block a user