D1 Part 2: settings.html split into four pages + sidebar restructure
- settings.html (1451 lines) deleted; sections moved verbatim into
settings_system.html (Rendszer konfiguráció, Verzió és frissítés,
Vezérlő/Kiszolgáló újraindítása + update/restart JS),
settings_notifications.html (Értesítések, Alkalmazás-email),
settings_security.html (Jelszó módosítás, Földrajzi korlátozás + geo
JS, Vészhelyzeti információk — heading + section copy accents fixed),
storage.html (Adattárolók, NAS, migrate progress, agent view + all
storage JS; wizard entry links now /storage/init|attach with sprite
icons instead of emoji). The NAS + migrate sections were nested inside
{{if .StoragePaths}} in the monolith and vanished with zero drives —
now unconditional on /storage.
- layout.html: Tárhely main-nav item (hard-drive icon) + the
'Beállítások' sidebar group with Rendszer / Értesítések / Biztonság és
hozzáférés sub-links (active-state per page key); orphaned
.sidebar-settings-link CSS deleted (grep-zero), .nav-group-label /
.nav-links-sub added.
- Handlers wired to their own builders + templates; the legacy
settingsData() merge deleted.
- scripts/template_id_gate.py: the §10 JS element-ID integrity gate
(getElementById/querySelector('#…') must resolve in the SAME template;
JS-created + template-parameterized IDs handled; layout modal IDs
allowlisted). Red-proven: a storage function planted in the
notifications template failed the gate with 'static #migrate-progress
not defined'.
- Tests: per-page section markers + cross-leak assertions, h3 section
inventory (all 11 old headings accounted for; typo rename asserted).
This commit is contained in:
@@ -1976,26 +1976,6 @@ a.stat-card:hover {
|
||||
margin-top: auto;
|
||||
border-top: 1px solid var(--line);
|
||||
}
|
||||
.sidebar-settings-link {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
gap: .6rem;
|
||||
padding: .75rem 1.5rem;
|
||||
color: var(--text-2);
|
||||
text-decoration: none;
|
||||
font-size: .95rem;
|
||||
font-weight: 500;
|
||||
transition: color 0.2s ease, background 0.2s ease;
|
||||
}
|
||||
.sidebar-settings-link:hover {
|
||||
color: var(--blue-bright);
|
||||
background: var(--blue-dim);
|
||||
}
|
||||
.sidebar-settings-link.active {
|
||||
color: var(--blue-bright);
|
||||
background: var(--blue-dim);
|
||||
border-left: 3px solid var(--blue);
|
||||
}
|
||||
|
||||
/* --- Backup page: Storage overview grid --- */
|
||||
.storage-overview-grid {
|
||||
@@ -3244,3 +3224,21 @@ span.mono, .mono { font-family: var(--font-data); }
|
||||
.login-title .title-accent {
|
||||
color: var(--blue-bright);
|
||||
}
|
||||
|
||||
/* Sidebar settings group (D1) — group label + indented sub-links. */
|
||||
.nav-group-label {
|
||||
padding: .75rem 1.5rem .25rem;
|
||||
font-size: .68rem;
|
||||
font-weight: 700;
|
||||
letter-spacing: .1em;
|
||||
text-transform: uppercase;
|
||||
color: var(--text-3);
|
||||
}
|
||||
.nav-links-sub {
|
||||
padding: 0 0 .5rem;
|
||||
flex: none;
|
||||
}
|
||||
.nav-links-sub a {
|
||||
padding: .5rem 1.5rem .5rem 1.75rem;
|
||||
font-size: .88rem;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user