Wechselrichter ueber ihren Namen, Symbole auf den Kacheln
Carport EG und Veranda OG zeigen jetzt ihre PV-Leistung. Der SolarManager legt die Hoymiles unter solarManager/inverters0, /inverters1 und so fort ab - die Nummer ist eine Position in einer Liste und sagt nichts darueber, welches Dach gemeint ist. Ein fest eingetragenes "inverters3" waere stillschweigend falsch, sobald sich die Reihenfolge aendert. Deshalb sucht wechselrichterWert() ueber invertersN/name und summiert die genannten auf. Das ist eine dritte Art, an einen Wert zu kommen - neben Topic und JSON-Pfad -, aber sie bleibt auf einen Schluessel und eine Funktion beschraenkt, und der gewoehnliche Weg ist unberuehrt. Findet sie keinen der Namen, schreibt sie die vorhandenen in die Konsole; sonst stuende nur ein Strich auf der Kachel und niemand wuesste, woran es liegt. tileTopics() unterschied bisher nicht und machte aus dem fehlenden Topic ein "/#" - eine Anmeldung auf einen leeren Zweig. Dazu Symbole vor den Zahlen. "0 W" allein sagt nicht, ob geladen, erzeugt oder verbraucht wird, und die Einheit beantwortet das nicht. Die Icons kommen als Schrift und nicht als Pfad: css/bootstrap-icons.min.css ist ohnehin eingebunden, und SVG-Text darf dieselbe Schriftfamilie benutzen wie HTML. Die Codepunkte stehen in kachelIcon() mit dem Namen daneben, abgeschrieben aus genau dieser CSS. Wegen font-display:block bleiben die Symbole bis zum Laden der Schriftdatei unsichtbar - die Werte stehen so lange ohnehin auf einem Strich. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
+12
-1
@@ -144,10 +144,21 @@
|
||||
<?php endforeach; ?>
|
||||
<?php endif; ?>
|
||||
<?php foreach ($room["werte"] as $i => $wert): ?>
|
||||
<?php $zeichen = kachelIcon($wert["icon"] ?? ""); ?>
|
||||
<?php if ($zeichen !== ""): ?>
|
||||
<!-- Ein Symbol vor der Zahl. "0 W" allein sagt nicht,
|
||||
ob geladen, erzeugt oder verbraucht wird; die
|
||||
Einheit beantwortet das nicht. Die Zahl rueckt
|
||||
dafuer nach rechts, damit Symbol und Wert
|
||||
zusammen mittig stehen. -->
|
||||
<tspan x="4" y="<?= $y[$i] ?>" text-anchor="middle" opacity=".8"
|
||||
style="font-family:bootstrap-icons"><?= $zeichen ?></tspan>
|
||||
<?php endif; ?>
|
||||
<!-- Der Platzhalter ist nur ein Strich: bevor der
|
||||
erste Wert da ist, soll hier keine Einheit
|
||||
stehen, die vielleicht gar nicht passt. -->
|
||||
<tspan id="<?= $floor ?>_w<?= $i ?>_<?= $room["id"] ?>" x="12" y="<?= $y[$i] ?>"
|
||||
<tspan id="<?= $floor ?>_w<?= $i ?>_<?= $room["id"] ?>"
|
||||
x="<?= $zeichen !== "" ? 15 : 12 ?>" y="<?= $y[$i] ?>"
|
||||
<?= empty($wert["gross"]) ? "" : 'font-size="1.6em"' ?> text-anchor="middle">–</tspan>
|
||||
<?php endforeach; ?>
|
||||
</text>
|
||||
|
||||
Reference in New Issue
Block a user