Slot-Close-Knoepfe groesser und in CLOSE-Farbe; grosser CLOSE-Knopf entfernt
User-Wunsch, drei Teile.
(1) GROESSER: font-size 0.72 -> 1rem, Polster 0.17/0.33 -> 0.39/0.61rem, fett.
(2) FARBE wie der bisherige CLOSE-Knopf: background #2d2000, color var(--accent),
Rahmen #4a3600 - derselbe Bernstein-Ton, damit "schliessen" ueberall gleich
aussieht.
(3) Grosser CLOSE-Knopf aus der Aktionsleiste ENTFERNT.
⚠⚠ DER HAKEN AN (3), geprueft bevor entfernt: der Knopf hatte ZWEI Aufgaben im
Render, nicht nur das Klicken - `disabled`, wenn keine Position offen ist, und
BLINKEN beim Close-Alarm (`closeBtn.classList.toggle("blink", closeAlert)`).
Haette ich ihn nur aus der HTML geloescht, waere der Alarm still geworden: nur
noch Ton, keine Sichtbarkeit. Beides ist mitgezogen:
- `close-main` ist disabled, wenn Slot 1 leer ist; `close-brk`, wenn BRK leer
ist (vorher gab es diese Unterscheidung gar nicht)
- `.px-close.blink` nutzt dieselbe `blkClose`-Keyframe wie vorher, und weil
die Farben identisch sind, sieht das Blinken exakt aus wie zuvor
⚠ Es blinkt NUR der Slot-1-Knopf: dort entstehen `sr_close_hint` und der
Flip-Alarm. Ein blinkender BRK-Knopf ohne Anlass waere ein Fehlsignal.
FUNKTIONAL GEPRUEFT (drei Zustaende gegen ein Minimal-DOM):
hasPos=1 hasBrk=0 alarm=0 -> main aktiv, brk gesperrt, kein Blinken
hasPos=0 hasBrk=1 alarm=1 -> main gesperrt, brk aktiv, Blinken
hasPos=1 hasBrk=1 alarm=1 -> beide aktiv, Blinken
0 verbliebene `data-side="close"`-Referenzen in JS und HTML.
⚠ `.btn.close` und `.btn.close.blink` bleiben in der CSS stehen - ungenutzt,
aber harmlos, und sie machen ein Zurueckholen des grossen Knopfs zu einer
Ein-Zeilen-Sache.
v=200 (HTML, JS, style.css und der Cache-Waechter `data-html-v` alle
gleichgezogen und am ausgelieferten Stand verifiziert).
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5
parent
54bcc9f81d
commit
3e275e7515
+13
-4
@@ -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;
|
||||
|
||||
+7
-4
@@ -12,9 +12,9 @@
|
||||
⚠ LOKAL eingebunden, kein CDN: die PWA laeuft ueber WireGuard
|
||||
und muss offline funktionieren. -->
|
||||
<link rel="stylesheet" href="pico.min.css?v=1">
|
||||
<link rel="stylesheet" href="style.css?v=199">
|
||||
<link rel="stylesheet" href="style.css?v=200">
|
||||
</head>
|
||||
<body data-html-v="199">
|
||||
<body data-html-v="200">
|
||||
<!-- Modul-Menü (ganz oben) -->
|
||||
<nav id="tabs">
|
||||
<button class="tab active" data-view="dash">Dashboard</button>
|
||||
@@ -381,7 +381,10 @@
|
||||
+ Neustart. -->
|
||||
<button class="btn long" data-side="long">▲ LONG<span class="btn-raum" id="raum-long"></span></button>
|
||||
<button class="btn short" data-side="short">▼ SHORT<span class="btn-raum" id="raum-short"></span></button>
|
||||
<button class="btn close" data-side="close">✕ CLOSE</button>
|
||||
<!-- ⚠ Grosser CLOSE-Knopf ENTFERNT (User 2026-08-20): es gibt jetzt je Slot
|
||||
einen ✕ direkt an der G/V-Anzeige. Seine beiden Aufgaben sind mit
|
||||
umgezogen — `disabled` bei leerem Slot und das BLINKEN beim
|
||||
Close-Alarm (nur Slot 1, dort entsteht der Anlass). -->
|
||||
<!-- BRK-Schalter ENTFERNT, dafuer der Circuit-Breaker (User 2026-08-19).
|
||||
Der Auto-Squeeze-Zustand bleibt in der Breakout-Karte sichtbar. -->
|
||||
<button class="btn tog" id="btn-cb" title="Circuit Breaker (Tagesverlust-Stopp) an/aus">🛑 CIRCUIT BREAKER</button>
|
||||
@@ -418,6 +421,6 @@
|
||||
</div>
|
||||
<div id="toast" class="toast hidden"></div>
|
||||
|
||||
<script src="app.js?v=199"></script>
|
||||
<script src="app.js?v=200"></script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
+12
-4
@@ -695,10 +695,18 @@ main{padding-bottom:4.1111rem} /* Platz für die fixe Leiste */
|
||||
EINE der beiden Positionen weg soll. */
|
||||
.px-line{display:flex; align-items:center; gap:0.3333rem}
|
||||
.px-half.rechts .px-line{flex-direction:row-reverse}
|
||||
/* ⚠ Groesse und Farbe wie der frühere grosse CLOSE-Knopf (User 2026-08-20):
|
||||
`background:#2d2000; color:var(--accent)` — derselbe Bernstein-Ton, damit
|
||||
„schliessen" ueberall gleich aussieht. Der grosse Knopf ist entfernt, diese
|
||||
beiden haben seine Aufgaben uebernommen (disabled + Blinken beim Alarm). */
|
||||
.px-close{
|
||||
background:transparent; border:1px solid var(--border); border-radius:var(--r-sm);
|
||||
color:var(--dim); cursor:pointer; font-size:0.7222rem; line-height:1;
|
||||
padding:0.1667rem 0.3333rem; font-family:inherit;
|
||||
background:#2d2000; border:1px solid #4a3600; border-radius:var(--r-sm);
|
||||
color:var(--accent); cursor:pointer; font-size:1rem; font-weight:600;
|
||||
line-height:1; padding:0.3889rem 0.6111rem; font-family:inherit;
|
||||
transition:filter .15s;
|
||||
}
|
||||
.px-close:hover{color:#f85149; border-color:#5c1a1a}
|
||||
.px-close:hover{filter:brightness(1.35)}
|
||||
.px-close[disabled]{opacity:.3; cursor:default}
|
||||
/* ⚠ Blinken uebernommen vom entfernten CLOSE-Knopf — sonst haette der
|
||||
Close-Alarm seine Sichtbarkeit verloren und nur noch gepiept. */
|
||||
.px-close.blink{animation:blkClose .6s ease-in-out infinite}
|
||||
|
||||
Reference in New Issue
Block a user