Bewaesserung: Ablaeufe zuerst; Zeitleiste: offene Karte uebersteht Neuzeichnen

Am Rechner liess die Karte die Bildlaufleiste erscheinen, die Zeitleiste
wurde schmaler und der ResizeObserver zeichnete sie samt Karte neu.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-15 21:30:31 +02:00
co-authored by Claude Opus 5
parent 6e805678d4
commit 3aae289a8c
2 changed files with 23 additions and 11 deletions
+11 -11
View File
@@ -93,6 +93,17 @@ $ablaeufe = [
]; ];
?> ?>
<div class="lade wasser"> <div class="lade wasser">
<div class="lade-abschnitt">
<h3>Abläufe</h3>
<div class="lade-chips wasser-ablaeufe">
<?php foreach ($ablaeufe as $ablauf): ?>
<button type="button" class="lade-chip" aria-pressed="false"
data-ablauf="<?= htmlspecialchars(json_encode($ablauf["modi"], JSON_UNESCAPED_SLASHES)) ?>"><?= htmlspecialchars($ablauf["label"]) ?></button>
<?php endforeach; ?>
</div>
<div class="lade-erklaerung">Ein Ablauf gießt die Zonen nacheinander antippen startet, nochmal antippen stoppt. Die Regenautomatik läuft davon unabhängig zum Sonnenaufgang.</div>
</div>
<div class="wasser-zonen"> <div class="wasser-zonen">
<?php foreach ($zonen as $zone): <?php foreach ($zonen as $zone):
$dauern = $zone["dauern"]; $dauern = $zone["dauern"];
@@ -119,16 +130,5 @@ $ablaeufe = [
<?php endforeach; ?> <?php endforeach; ?>
</div> </div>
<div class="lade-abschnitt">
<h3>Abläufe</h3>
<div class="lade-chips wasser-ablaeufe">
<?php foreach ($ablaeufe as $ablauf): ?>
<button type="button" class="lade-chip" aria-pressed="false"
data-ablauf="<?= htmlspecialchars(json_encode($ablauf["modi"], JSON_UNESCAPED_SLASHES)) ?>"><?= htmlspecialchars($ablauf["label"]) ?></button>
<?php endforeach; ?>
</div>
<div class="lade-erklaerung">Ein Ablauf gießt die Zonen nacheinander antippen startet, nochmal antippen stoppt. Die Regenautomatik läuft davon unabhängig zum Sonnenaufgang.</div>
</div>
<div class="lade-meldung" data-w="meldung" aria-live="polite">Befehle gehen sofort an die Ventilsteuerung</div> <div class="lade-meldung" data-w="meldung" aria-live="polite">Befehle gehen sofort an die Ventilsteuerung</div>
</div> </div>
+12
View File
@@ -309,6 +309,13 @@ function zeitleisteZeichnen() {
+ '<span><i class="bi bi-calendar-x zl-nichtdran"></i>an diesem Tag nicht dran</span>' + '<span><i class="bi bi-calendar-x zl-nichtdran"></i>an diesem Tag nicht dran</span>'
+ "</div>"; + "</div>";
// Eine offene Karte übersteht das Neuzeichnen. Sonst verschwand sie am
// Rechner gleich wieder: ragt sie unten aus der Seite, erscheint die
// Bildlaufleiste, die Zeitleiste wird schmaler, und der ResizeObserver
// zeichnet neu. Auf dem Handy liegt die Bildlaufleiste über der Seite.
const offeneKarte = ziel.querySelector(".zl-karte");
const offenId = offeneKarte ? offeneKarte.dataset.id : null;
ziel.innerHTML = html; ziel.innerHTML = html;
zlKettenZeichnen(ziel); zlKettenZeichnen(ziel);
@@ -325,6 +332,11 @@ function zeitleisteZeichnen() {
zeitleiste.gescrollt = true; zeitleiste.gescrollt = true;
} }
} }
if (offenId !== null) {
const anker = ziel.querySelector('.zl-ding[data-id="' + offenId + '"]');
if (anker) zlKarteOeffnen(anker, offenId);
}
} }
/** Ein Eintrag in einer Bahn. */ /** Ein Eintrag in einer Bahn. */