Aktualisiere Versionsnummer auf 2.2.0 in README.md, package.json, package-lock.json und package-solution.json. Verbessere Mega Menu Konfiguration durch zentrale Speicherung im Property Bag des Root Webs und Synchronisierung auf alle Unterwebs. Aktualisiere UI-Beschreibungen und füge neue Logik zur Handhabung von Runtime-Bindungen hinzu.

This commit is contained in:
Torsten Brendgen
2026-07-19 23:15:40 +02:00
parent d7d469adb0
commit 62fef65c12
5 changed files with 19 additions and 13 deletions

View File

@@ -9,7 +9,7 @@ Aktuell verwaltet sie:
- Mega Menu
- ExpiryIndicator
Fuer Mega Menu wird das Termset ueber einen durchsuchbaren Picker aus dem Default Site Collection Term Store ausgewaehlt. PortalSettings speichert automatisch Termset-ID und Namen sowie Cache-Dauer und Debug-Modus. Individuelle Stylesheets werden ausschliesslich ueber Custom Branding eingebunden.
Fuer Mega Menu wird das Termset ueber einen durchsuchbaren Picker aus dem Default Site Collection Term Store ausgewaehlt. PortalSettings speichert Termset-ID, Namen, Cache-Dauer und Debug-Modus einmal zentral im Property Bag des Root Webs. Beim Speichern werden identische Runtime-Bindungen rekursiv auf das Root Web und alle vorhandenen Unterwebs synchronisiert. Individuelle Stylesheets werden ausschliesslich ueber Custom Branding eingebunden.
## ExpiryIndicator 2.1
@@ -27,10 +27,11 @@ PortalSettings bleibt fuer den Betrieb des ExpiryIndicators optional.
## Erkennung
- Custom Branding und Mega Menu werden anhand ihrer aktiven, markierten Application-Customizer-UserCustomAction erkannt.
- Custom Branding wird anhand seiner aktiven Application-Customizer-UserCustomAction erkannt.
- Mega Menu wird anhand seiner zentralen Root-Web-Konfiguration oder einer aktiven Runtime-Bindung erkannt.
- ExpiryIndicator registriert einen Solution-Descriptor und sein Bindungsinventar im Property Bag des Root Webs.
Beim Speichern einer nur web-scoped registrierten Custom-Branding- oder MegaMenu-Konfiguration erstellt PortalSettings automatisch die site-scoped UserCustomAction und entfernt den alten Web-Eintrag. Das ist fuer die verlaessliche Ausfuehrung auf allen modernen Seiten und Subwebs der Site Collection erforderlich.
Custom Branding kann beim Speichern auf eine site-scoped UserCustomAction angehoben werden. Mega Menu verwendet wegen der On-Premises-Loader-Eigenheiten bewusst web-scoped Runtime-Bindungen. Die fachliche Konfiguration bleibt dennoch einmalig und zentral: PortalSettings speichert sie im Root Web und verteilt sie auf alle vorhandenen Webs. Fuer spaeter neu angelegte Unterwebs wird die Konfiguration einfach erneut gespeichert, wodurch die Synchronisierung idempotent nachgezogen wird.
Neue eigene Solutions werden zentral im Provider-Register in `PortalSettings.aspx` hinterlegt. Ein Provider
definiert Kennung, Anzeigename, Component-ID, Panel und Erkennungsart. So bleibt PortalSettings die gemeinsame
@@ -49,7 +50,7 @@ Das Paket liegt danach unter `sharepoint/solution/portal-settings.sppkg`.
## Installation und Upgrade
1. `portal-settings.sppkg` im App Catalog durch Version `2.1.8.0` ersetzen.
1. `portal-settings.sppkg` im App Catalog durch Version `2.2.0.0` ersetzen.
2. PortalSettings im Root Web der Site Collection installieren beziehungsweise aktualisieren.
3. `expiry-indicator.sppkg` durch Version `2.1.0.0` ersetzen und die App aktualisieren.
4. `/SitePages/PortalSettings.aspx` mit geleertem Browsercache laden.