diff --git a/web/app.js b/web/app.js index 11d5330..0b0282a 100644 --- a/web/app.js +++ b/web/app.js @@ -1350,10 +1350,16 @@ function render(d) { const hasPos = !!p.ticket; const longBtn = document.querySelector('.btn[data-side="long"]'); const shortBtn = document.querySelector('.btn[data-side="short"]'); - const closeBtn = document.querySelector('.btn[data-side="close"]'); + // ⚠ Der grosse CLOSE-Knopf ist am 2026-08-20 entfernt (User-Wunsch) — es gibt + // jetzt je Slot einen. Seine beiden Aufgaben wandern mit: `disabled`, wenn + // der Slot leer ist, und BLINKEN beim Close-Alarm. Ohne das haette der + // Alarm seine Sichtbarkeit verloren und nur noch gepiept. + const closeMain = $streng("close-main"), closeBrk = $streng("close-brk"); + const hasBrk = !!((d.position_brk || {}).ticket); longBtn.disabled = hasPos; shortBtn.disabled = hasPos; - closeBtn.disabled = !hasPos; + if (closeMain) closeMain.disabled = !hasPos; + if (closeBrk) closeBrk.disabled = !hasBrk; // BRK-Schalter ENTFERNT (User 2026-08-19), dafuer der Circuit-Breaker. Der // Auto-Squeeze-ZUSTAND bleibt in der Breakout-Karte sichtbar -- nur sein // Schalter ist weg (jetzt POST-Endpunkt bzw. ini). @@ -1417,7 +1423,10 @@ function render(d) { const srAuto = !!d.auto_sr_close; const srClose = !!(srHint && srHint.close); // P(break) < Schwelle → schließen const closeAlert = flipClose || (gainOK && srClose); - closeBtn.classList.toggle("blink", closeAlert); + // ⚠ Der Alarm gilt der Position in Slot 1 (dort entsteht `sr_close_hint` und + // der Flip). Deshalb blinkt nur dieser Knopf — ein blinkender BRK-Knopf + // ohne Anlass waere ein Fehlsignal. + if (closeMain) closeMain.classList.toggle("blink", closeAlert); if (closeAlert) beepCloseAlert(); // Blinken + Ton (gedrosselt, alle 4 s) const hintEl = $("pos-srhint"); if (hintEl) { @@ -2358,7 +2367,7 @@ async function closeSlot(slot, label, pnl) { // und der Browser zeigte Altes. Statt das jedes Mal von Hand zu diagnostizieren, // sagt die Seite es jetzt selbst. // ⚠ Bewusst SICHTBAR statt nur Konsole: die Konsole sieht am Handy niemand. -const _JS_V = "199"; +const _JS_V = "200"; { const htmlV = document.body && document.body.dataset ? document.body.dataset.htmlV : null; diff --git a/web/index.html b/web/index.html index a25a843..20b0fea 100644 --- a/web/index.html +++ b/web/index.html @@ -12,9 +12,9 @@ ⚠ LOKAL eingebunden, kein CDN: die PWA laeuft ueber WireGuard und muss offline funktionieren. --> - + - +