Fix: Design-System-Regression v1102 — .hidden(!important) vs style.display app-weit
Rene: 'Tagebuch Kalenderansicht/Karte nicht mehr da' — Root-Cause: 459cd42
ersetzte style="display:none" durch class="hidden", aber die Show-Pfade
setzten weiter style.display. .hidden hat !important und gewinnt immer
(gleiche Klasse wie Filter-Panel-Hotfix v1242). Prod-Logs bewiesen: kein
einziger /diary/calendar- oder /locations-Request kam je an.
Unsichtbar seit v1102, jetzt per classList gefixt:
- diary: Stats-Bar mit View-Switcher (Liste/Medien/Kalender/Karte) + Medien-Grid neuer Eintrag
- health: KI-Tierarzt-Ergebnis erschien nie
- walks: Challenge-/Stamm-Gassi-Tabs leer
- welcome: iOS-Panel der Desktop-Install-Anleitung
- wiki: Fotos-Mod-Badge + Foto-Fallback (via app.js data-fb show-el/sibling-Handler)
- routes: Filter-Badge; breeder: Fotos-Section
Zweite Fehlerklasse aus demselben Sprint: doppelte class-Attribute
(class="x" id=… class="hidden") — Browser verwirft das zweite Attribut.
87 Vorkommen in 23 Dateien zusammengeführt; betroffene Show/Hide-Pfade
(ev-map, rk-mine/nearby-group, chat-partner-dot, eh-panel, zh-section)
auf classList umgestellt.
This commit is contained in:
parent
5acbaaa97b
commit
178aef7fb0
32 changed files with 197 additions and 188 deletions
|
|
@ -391,7 +391,7 @@ window.Page_diary = (() => {
|
|||
const bar = _container.querySelector('#diary-stats-bar');
|
||||
if (!bar) return;
|
||||
const s = _totalStats;
|
||||
if (!s && _entries.length === 0) { bar.style.display = 'none'; return; }
|
||||
if (!s && _entries.length === 0) { bar.classList.add('hidden'); return; }
|
||||
const entries = s?.entries ?? _entries.length;
|
||||
const photos = s?.photos ?? _entries.reduce((n, e) => n + _allMedia(e).length, 0);
|
||||
const days = s?.days ?? new Set(_entries.map(e => e.datum).filter(Boolean)).size;
|
||||
|
|
@ -425,7 +425,8 @@ window.Page_diary = (() => {
|
|||
</button>
|
||||
</div>
|
||||
`;
|
||||
bar.style.display = 'flex';
|
||||
// .hidden hat !important → nur per classList togglen (style.display verliert immer)
|
||||
bar.classList.remove('hidden');
|
||||
|
||||
bar.querySelectorAll('.diary-view-btn').forEach(btn => {
|
||||
btn.addEventListener('click', () => {
|
||||
|
|
@ -1332,8 +1333,9 @@ window.Page_diary = (() => {
|
|||
function _renderNewGrid() {
|
||||
const grid = document.getElementById('diary-new-media-grid');
|
||||
if (!grid) return;
|
||||
if (_newFiles.length === 0) { grid.style.display = 'none'; grid.innerHTML = ''; return; }
|
||||
grid.style.cssText = 'display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:8px;margin-bottom:8px';
|
||||
if (_newFiles.length === 0) { grid.classList.add('hidden'); grid.innerHTML = ''; return; }
|
||||
// .hidden hat !important → classList togglen; Grid-Layout kommt aus .diary-media-grid
|
||||
grid.classList.remove('hidden');
|
||||
grid.innerHTML = _newFiles.map((f, i) => {
|
||||
const objUrl = URL.createObjectURL(f);
|
||||
const thumb = f.type === 'application/pdf' || f.name?.endsWith('.pdf')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue