enhancement
major
minor
major
minor
In der React-Oberfläche wird Nutzern nicht angezeigt, dass sich das System im Wartungsmodus befindet oder in Kürze in ihn wechselt.
Im klassischen UI gibt es dafür einen Hinweisbalken: masterContent.xml bindet die MaintenanceViewConfiguration über ein ConditionalViewLayout ein, das daraus erzeugte MaintenanceControl zeigt den Zustand und während der Übergangsphase einen Countdown (siehe #29480).
Im React-View-Layer existiert kein Gegenstück. Der Wartungsmodus taucht dort nur an zwei Stellen auf:
- MaintenanceStatusView und MaintenanceModeAction — ausschließlich innerhalb der Administrationsansicht admin/system/maintenance.view.xml.
- LoginAction und PendingSessionAction — ausschließlich der Abweisungspfad, also die Fehlermeldung für Nutzer, die sich nicht anmelden dürfen.
Ein Nutzer, der sich erfolgreich anmeldet — etwa weil mit #29480 die Anmeldung während der Übergangsphase erlaubt wurde — erfährt also nichts vom bevorstehenden Wartungsmodus und verliert beim automatischen Abmelden möglicherweise seine Arbeit. Dasselbe gilt für bereits angemeldete Nutzer, während deren Sitzung der Wartungsmodus angekündigt wird.
Umsetzung
Die Oberfläche erhält keinen wartungsspezifischen Sonderweg, sondern einen allgemeinen Bereich für systemweite Hinweise, wie ihn das klassische UI mit ConditionalViewLayout und MultiViewConfiguration bereits besitzt.
- Das Element <app-shell> erhält den zusätzlichen Slot <notices>, der beliebig viele Hinweis-Elemente aufnimmt. Der Bereich beansprucht keine Höhe, solange kein Hinweis sichtbar ist.
- Das neue Control TLNoticeBar rendert einen Hinweis mit Schweregrad, Text und optionalem Zeitpunkt. Ist ein Zeitpunkt gesetzt, zeigt es einen sekundengenauen Countdown; bei Null bleibt es stehen, statt in negative Werte zu laufen. Über den tatsächlichen Zustand entscheidet immer der Server.
- Das neue Element <maintenance-notice/> speist diesen Bereich aus dem MaintenanceWindowManager: während der Übergangsphase mit Countdown auf den Beginn, im aktiven Wartungsmodus ohne Countdown, im Normalbetrieb unsichtbar. Die im Aktivierungsdialog hinterlegte Nachricht wird mit angezeigt.
- Der MaintenanceWindowManager erhält eine Listener-Registrierung, damit ein Zustandswechsel die offenen Sitzungen sofort erreicht. Angemeldete Nutzer sehen die Ankündigung also ohne Neuladen.
Der Hinweisbereich ist bewusst allgemein gehalten: der Countdown bis zur automatischen Abmeldung (im klassischen UI ein eigener Mechanismus, LogoutTimerControl in der Navigationsleiste) und der Hinweis auf einen bevorstehenden Lizenzablauf sind weitere Kandidaten dafür. Der Session-Timeout wird in einem eigenen Ticket nachgezogen.
Es ist keine Anpassung bestehender Anwendungen erforderlich.