From dea0cd9e39fa3b3f5eba679be781e2a5751bcae2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mathias=20Gla=CC=88ser?= Date: Wed, 30 Sep 2026 12:13:01 +0200 Subject: [PATCH] Centralize editable card visibility toggle --- .../ui_foundation/editable-action-card.md | 18 +++++++ modules/shared/auth/ui/home.php | 11 ++-- public/assets/styles.portal.css | 4 -- public/scripts/shared-editable-action-card.js | 54 ++++++++++++++++++- 4 files changed, 76 insertions(+), 11 deletions(-) diff --git a/docs/modules/shared/ui_foundation/editable-action-card.md b/docs/modules/shared/ui_foundation/editable-action-card.md index 4c0a15f..81118c7 100644 --- a/docs/modules/shared/ui_foundation/editable-action-card.md +++ b/docs/modules/shared/ui_foundation/editable-action-card.md @@ -13,6 +13,7 @@ Das Pattern kapselt nur die technische Interaktion: - optionale Loeschbestaetigung mit konfigurierbarem Token - Deaktivieren der Loeschaktion bis zur gueltigen Bestaetigung - gleichzeitiges Bearbeiten mehrerer Karten +- optionales Ein- und Ausblenden des Karteninhalts Fachliche Aktionen, API-Aufrufe, Validierung und die Aktualisierung fachlicher Daten bleiben beim owning Modul. @@ -26,6 +27,9 @@ Bedienelemente verwenden folgende Attribute: - `data-shared-editable-card-cancel` - `data-shared-editable-card-read` - `data-shared-editable-card-form` +- optional `data-shared-editable-card-collapsible` +- optional `data-shared-editable-card-collapsed` +- optional `data-shared-editable-card-toggle` - optional `data-shared-editable-card-delete` - optional `data-shared-editable-card-delete-confirmation` - optional `data-shared-editable-card-delete-input` @@ -41,6 +45,20 @@ Das Loesch-Token wird je Karte mit Loeschen bleibt im owning Modul und verwendet den bestehenden fachlichen Handler. +## Optionales Ein- und Ausblenden + +Eine Karte mit `data-shared-editable-card-collapsible` kann ihren Inhalt +ein- und ausblenden. Mit `data-shared-editable-card-collapsed` wird der initial +eingeklappte Zustand markiert. Der Toggle verwendet die Beschriftungen +„Anzeigen“ und „Verbergen“. Beim Wechsel in den Bearbeitungsmodus wird der +Inhalt eingeblendet und der Toggle deaktiviert. Nach dem Bearbeiten bleibt der +aktuelle Sichtbarkeitszustand erhalten. + +Die zentrale Komponente stellt dafür `setVisibility(card, visible)`, +`isVisible(card)` und `setToggleEnabled(card, enabled)` bereit. Fachmodule +verwenden diese Methoden nur für fachliche Folgeaktionen wie das erneute +Rendern nach dem Speichern. + ## Nutzung im Lager Im Lager-Drawer verwenden die aktive Charge und offene Chargen das Pattern. diff --git a/modules/shared/auth/ui/home.php b/modules/shared/auth/ui/home.php index 27f59f5..229116a 100644 --- a/modules/shared/auth/ui/home.php +++ b/modules/shared/auth/ui/home.php @@ -965,7 +965,7 @@ function render_auth_home_page(array $user, array $otcProducts = [], array $otcM echo ''; echo ''; echo ''; - echo ''; + echo ''; echo ''; echo ''; echo '