Etagenwechsel im Automatik-Editor sah wie eine Kopie aus

Wer im Editor die Etage aenderte, fand die Automatik danach unter beiden
Reitern. In der Datenbank stand sie nur einmal - saveAutomation() macht
bei bekannter id ein UPDATE samt floor, einen INSERT gibt es auf dem Weg
gar nicht. Nachgeladen wurde nach dem Speichern aber nur die Liste der
neuen Etage; die alte behielt ihre Zeile, bis jemand die Seite neu lud.

Der Editor merkt sich jetzt die Etage, mit der er aufgemacht wurde, und
holt bei einem Wechsel beide Listen neu. Ohne Wechsel bleibt es bei der
einen Anfrage.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
2026-09-05 12:02:20 +02:00
co-authored by Claude Opus 5
parent 97b5c78fda
commit 958408eba9
+11
View File
@@ -21,6 +21,9 @@ let autoModel = null;
let autoDevices = [];
let autoLockouts = [];
let autoRooms = [];
// Die Etage, mit der der Editor aufgemacht wurde. Wird sie geaendert,
// braucht auch die Liste der alten Etage ein Nachladen.
let autoFloorVorher = "";
// --- Katalog-Helfer ------------------------------------------------------
@@ -639,6 +642,7 @@ function loadAutomatic() {
autoRooms = daten.rooms || [];
const a = daten.automation;
autoFloorVorher = a.floor;
autoModel = {
id: a.id,
name: a.name,
@@ -750,6 +754,13 @@ function submitAutoAction() {
}
modalEV.hide();
refreshAutomations(nutzlast.floor);
// Ein Etagenwechsel verschiebt die Automatik, er kopiert sie nicht - in
// der Datenbank steht weiter eine Zeile. Ohne dieses zweite Nachladen
// bliebe sie aber in der Tabelle der alten Etage stehen, und genau das
// sah wie eine Kopie aus.
if (autoFloorVorher && autoFloorVorher !== nutzlast.floor) {
refreshAutomations(autoFloorVorher);
}
});
}