diff --git a/ROADMAP.md b/ROADMAP.md index fd1689d..531a54b 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -94,3 +94,5 @@ | v1.8.17 | 2026-05-04 | Fix: Atomarer Config-Write + Backup-Fallback | | v1.8.18 | 2026-05-05 | Feature: Flash-Wizard, Setup-Wizard, NuttX OTA, MQTT rc=5, Port-Sicherheit | | v1.8.19 | 2026-05-05 | Fix: Mobile-Layout — Tabs scrollen, kein horizontaler Overflow | +| v1.8.20 | 2026-05-05 | Fix: Eigenversorgungskarte bei PV offline, Stromtarif-Einstellungen gehen nicht verloren | +| v1.8.21 | 2026-05-05 | Fix: Finanzen-Tab bleibt nicht bei "Lade..." hängen (fEur/fKwh Scope-Bug) | diff --git a/haos-addon/config.yaml b/haos-addon/config.yaml index f890ec6..642fba1 100644 --- a/haos-addon/config.yaml +++ b/haos-addon/config.yaml @@ -1,5 +1,5 @@ name: ShineBridge -version: "1.8.20" +version: "1.8.21" slug: shinebridge description: Growatt Wechselrichter lokal in Home Assistant — Modbus TCP via ShineLAN-X, MQTT Discovery, Web UI url: https://gitea.bitfire.work/retr0/shinebridge diff --git a/haos-addon/src/web/index.html b/haos-addon/src/web/index.html index 4eb41b3..099c76c 100644 --- a/haos-addon/src/web/index.html +++ b/haos-addon/src/web/index.html @@ -713,6 +713,15 @@ function renderSpotChart(spotData) { `; } +function fEur(v) { + if (v == null) return null; + return v >= 100 ? v.toFixed(0) + ' €' : v.toFixed(2) + ' €'; +} +function fKwh(v) { + if (v == null) return null; + return (v >= 100 ? v.toFixed(0) : v.toFixed(1)) + ' kWh'; +} + function renderEnergy(inverters, aggregates, period, spotData) { const el = document.getElementById("energy-content"); if (!aggregates || !Object.keys(aggregates).length) { @@ -848,15 +857,6 @@ function renderEnergy(inverters, aggregates, period, spotData) { const pi = period.price_import || 0.30; const pe = period.price_export || 0.08; - function fEur(v) { - if (v == null) return null; - return v >= 100 ? v.toFixed(0) + ' €' : v.toFixed(2) + ' €'; - } - function fKwh(v) { - if (v == null) return null; - return (v >= 100 ? v.toFixed(0) : v.toFixed(1)) + ' kWh'; - } - function periodCard(label, kwh, cost, col, sub) { if (kwh == null) return ''; return `