Neustart-Festhaenger, OTA-Pruefsumme, Statistik-Kopfzahl (2026.8.31.4)
Die App blieb nach einem Neustart von Home Assistant auf dem alten Stand stehen, mit einer 502-Fehlerzeile, die erst ein Beenden der App wegbekam. Zwei Ursachen: 502/503/504 galten als harter Ladefehler statt als "Server faehrt gerade hoch", und nach dem Wiederverbinden wurde genau einmal nachgeladen - schlug das fehl, kam nie wieder ein Versuch. Beides behoben, vier Regressionstests dazu. OTA: das Buendel ist von HEAD ueber die Platte bis zu den ausgelieferten Bytes nachweislich deckungsgleich. Die Fassung haengt jetzt trotzdem als ?v= an der Adresse (der statische Pfad kommt ohne Cache-Control, aber mit ETag), und ein Pruefsummenfehler wird erklaert statt durchgereicht. Statistik: der Gesamtwert steht jetzt als grosse Zahl in der Kopfzeile, darunter bleiben vier Spalten - fuenf passen auf dem Telefon nachweislich nicht in eine Zeile. Fahrzeugfoto ohne Beschnitt und ohne Bodenschatten, damit auch ohne den Schalter dafuer. Setup filtert zusaetzlich nach dem Signalnamen aus dem Katalog. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -269,49 +269,29 @@ input[type="date"].dm-eingabe {
|
||||
margin-bottom: 22px;
|
||||
}
|
||||
|
||||
.dm-szene::before {
|
||||
content: "";
|
||||
position: absolute;
|
||||
left: 0;
|
||||
right: 0;
|
||||
bottom: 0;
|
||||
/* 26/96 statt 42/78: der Verlauf soll die harte Bildkante ausblenden,
|
||||
nicht das Fahrzeug. Mit 42% Hoehe und Vollton ab 78% war das untere
|
||||
Drittel des Fotos praktisch einfarbig - Raeder und Schweller lagen
|
||||
darunter (gemeldet vom Eigentuemer, 2026-08-31). */
|
||||
height: 26%;
|
||||
background: linear-gradient(to bottom, transparent, var(--canvas) 96%);
|
||||
pointer-events: none;
|
||||
z-index: 1;
|
||||
}
|
||||
/* Der Ausblend-Verlauf ist am 2026-08-31 entfallen: er lag ueber dem
|
||||
unteren Teil des Fotos, und der Eigentuemer hat zweimal darum gebeten,
|
||||
das Fahrzeug unverdeckt zu sehen. Ebenso der Bodenschatten, der hier
|
||||
frueher als .dm-szene--strasse::after stand - samt dem Schalter dafuer. */
|
||||
|
||||
/* Bodenschatten unter dem Fahrzeug (`.szene.strasse::after` /
|
||||
`.szene.winter::after` im Panel, abschaltbar über den Schalter „Boden" in
|
||||
den Einstellungen). */
|
||||
.dm-szene--strasse::after,
|
||||
.dm-szene--winter::after {
|
||||
content: "";
|
||||
position: absolute;
|
||||
left: 8%;
|
||||
right: 8%;
|
||||
bottom: 6px;
|
||||
height: 26px;
|
||||
border-radius: 50%;
|
||||
background: radial-gradient(ellipse at center, var(--shade), transparent 70%);
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.dm-szene--winter::after {
|
||||
background: radial-gradient(ellipse at center, rgba(150, 190, 255, .16), transparent 70%);
|
||||
}
|
||||
/* Das Fahrzeugfoto wird nicht mehr beschnitten.
|
||||
|
||||
/* Panel: .carbox ~120px, .szene ~130px hoch - ein schmales, breites Band,
|
||||
nicht das 4:3-Seitenverhältnis, das ImagePlaceholder sonst für Galerien
|
||||
verwendet (dort korrekt, hier war es das nie - "carfix klein" im Panel ist
|
||||
16:8). Scoped auf die Übersicht-Szene, damit andere ImagePlaceholder-
|
||||
Stellen (Mein Audi, Reifen, ...) ihre eigene, richtige Größe behalten. */
|
||||
Gemessen am echten Foto (2026-08-31): es ist 2000x1125 gross, also 16:9.
|
||||
Der Kasten stand auf 16:8 - bei object-fit:cover wurde das Bild auf die
|
||||
Kastenbreite skaliert und oben wie unten je ein Viertel abgeschnitten.
|
||||
Das Dach lag darin.
|
||||
|
||||
Statt das Verhaeltnis auf 16:9 festzuschreiben - was beim naechsten Foto in
|
||||
einem anderen Format wieder schneiden wuerde - bestimmt jetzt das Bild
|
||||
selbst die Hoehe. Der Platzhalter behaelt sein festes Verhaeltnis, er hat
|
||||
ja keines von sich aus. */
|
||||
.dm-szene .ads-bildbox {
|
||||
aspect-ratio: 16 / 8;
|
||||
aspect-ratio: auto;
|
||||
}
|
||||
|
||||
.dm-szene .ads-bildbox img {
|
||||
height: auto;
|
||||
}
|
||||
|
||||
/* Ohne Foto bleibt die Fläche flach und läuft nicht randlos: sonst stünden
|
||||
@@ -685,9 +665,25 @@ button.dm-serviceblock:active {
|
||||
braucht bei 16px Audi Type Wide etwa 60. auto-fit bricht deshalb um - auf dem
|
||||
Telefon drei plus zwei, auf einem breiten Bildschirm alle fuenf in einer
|
||||
Reihe. Deckungsgleich mit .quad im Panel. */
|
||||
/* Vier feste Spalten - Jahr, Monat, Woche, Tag muessen in EINE Zeile passen.
|
||||
|
||||
Vorher stand hier repeat(auto-fit, minmax(84px, 1fr)). Auf dem Telefon ist
|
||||
die Kachel innen 307px breit, damit passten bei 12px Abstand nur drei
|
||||
Spalten (3 x 84 + 2 x 12 = 276; vier waeren 372) - die vierte rutschte in
|
||||
eine zweite Zeile.
|
||||
|
||||
Mit vier festen Spalten bleiben 67,75px je Spalte. Der laengste realistisch
|
||||
vorkommende Wert ist ein sechsstelliger Kilometerstand wie "209.177": am
|
||||
laufenden Panel gemessen 67px in Audi Type Wide 300 bei 16px. Es passt
|
||||
also, aber ohne Reserve - eine fuenfte Spalte gaebe es nur mit kleinerer
|
||||
Schrift, und genau deshalb steht der Gesamtwert jetzt in der Kopfzeile der
|
||||
Kachel statt in einer eigenen Spalte.
|
||||
|
||||
Bewusst kein white-space:nowrap: waere ein Wert doch einmal breiter,
|
||||
umbricht er innerhalb seiner Spalte, statt aus der Kachel zu laufen. */
|
||||
.dm-quad {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(auto-fit, minmax(84px, 1fr));
|
||||
grid-template-columns: repeat(4, minmax(0, 1fr));
|
||||
gap: var(--sp-3);
|
||||
margin-top: var(--sp-3);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user