- Added a status display area in the ExpiryIndicator binding dialog to show messages related to binding actions. - Cleared the status display when opening the binding dialog. - Updated the binding registration function to normalize expiry bindings for better handling. - Improved error handling and user feedback during the binding process. - Adjusted the showStatus function to update the status in both the main status area and the binding dialog.
PortalSettings
PortalSettings wird einmal im Root Web einer Site Collection installiert. Die Seite erkennt registrierte Einstellungsanbieter automatisch und zeigt nur Tabs fuer tatsaechlich vorhandene Solutions.
Aktuell verwaltet sie:
- Custom Branding
- Mega Menu
- ExpiryIndicator
ExpiryIndicator 2.1
- Site-Collection-Standard im Property Bag des Root Webs,
- Inventar aller durch das Aktivierungsskript registrierten Bindungen in Root Web und Subwebs,
- Popup zum Anbinden vorhandener Datumsfelder ohne PowerShell,
- Vererbung des zentralen Standards durch alle Bindungen,
- weiterhin moegliche lokale Ausnahmen in
ClientSideComponentPropertiesdes gebundenen Feldes, - keine zusaetzliche Konfigurationsliste,
- Unterstuetzung alter Einzelregeln und verschachtelter V2-Regeln mit
and/or, - Validierung und Formatierung der vollstaendigen JSON-Konfiguration vor dem Speichern.
Die Prioritaet lautet: lokale Feldausnahme, Subweb-Override, Site-Collection-Standard, eingebauter Standard. PortalSettings bleibt fuer den Betrieb des ExpiryIndicators optional.
Erkennung
- Custom Branding und Mega Menu werden anhand ihrer aktiven, markierten Application-Customizer-UserCustomAction erkannt.
- ExpiryIndicator registriert einen Solution-Descriptor und sein Bindungsinventar im Property Bag des Root Webs.
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
Admin-Oberflaeche, ohne dass nicht installierte Solutions leere Tabs erzeugen.
Build
Die Solution verwendet die SPFx-1.4.1-Toolchain und wird reproduzierbar mit Node.js 8.17.0 gebaut:
npm install
npm run package
Das Paket liegt danach unter sharepoint/solution/portal-settings.sppkg.
Installation und Upgrade
portal-settings.sppkgim App Catalog durch Version2.1.3.0ersetzen.- PortalSettings im Root Web der Site Collection installieren beziehungsweise aktualisieren.
expiry-indicator.sppkgdurch Version2.1.0.0ersetzen und die App aktualisieren./SitePages/PortalSettings.aspxmit geleertem Browsercache laden.- ExpiryIndicator anbinden auswaehlen und Web-URL, Listentitel und internen Namen des vorhandenen Datumsfeldes eingeben. Optional werden Classic ScriptLink und Ribbon-Befehl mitregistriert.
Das PowerShell-Skript bleibt fuer automatisierte Rollouts und Massenbereitstellungen erhalten, ist fuer eine manuelle Bindung ueber PortalSettings aber nicht mehr erforderlich.
Der ExpiryIndicator-Tab erscheint erst, wenn mindestens eine Bindung registriert ist, ein zentraler Standard existiert oder der Solution-Descriptor im Root Web vorhanden ist.
Zum Anbinden werden mindestens die Berechtigungen Listen verwalten und zum Registrieren der optionalen Classic-Webaktion Web verwalten benoetigt. Die ExpiryIndicator-App muss zuvor im Root Web installiert sein.