Add SharePoint element manifests for PortalSettings pages
- Created elements-v1.1.xml, elements-v2.xml, and elements.xml to define the PortalSettingsPage modules for different versions. - Added upgrade actions for v1.1 and v2 to apply the respective element manifests. - Ensured that the PortalSettings.aspx file is included in the SitePages library with appropriate settings.
This commit is contained in:
54
README.md
54
README.md
@@ -1,7 +1,55 @@
|
||||
## portal-settings
|
||||
# PortalSettings
|
||||
|
||||
Separate Settings-App fuer bestehende SharePoint Extensions.
|
||||
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:
|
||||
|
||||
Aktuell verwaltet die Seite dynamisch die aktiven Application Customizer fuer:
|
||||
- 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,
|
||||
- Vererbung des zentralen Standards durch alle Bindungen,
|
||||
- weiterhin moegliche lokale Ausnahmen in `ClientSideComponentProperties` des 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:
|
||||
|
||||
```powershell
|
||||
npm install
|
||||
npm run package
|
||||
```
|
||||
|
||||
Das Paket liegt danach unter `sharepoint/solution/portal-settings.sppkg`.
|
||||
|
||||
## Installation und Upgrade
|
||||
|
||||
1. `portal-settings.sppkg` im App Catalog durch Version `2.0.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. `Enable-ExpiryIndicator.ps1` fuer jede verwendete Liste oder Bibliothek erneut ausfuehren. Dadurch werden
|
||||
Descriptor und Bindungsinventar idempotent registriert; vorhandene lokale Konfigurationen bleiben erhalten.
|
||||
5. `/SitePages/PortalSettings.aspx` mit geleertem Browsercache laden.
|
||||
|
||||
Der ExpiryIndicator-Tab erscheint erst, wenn mindestens eine Bindung registriert ist, ein zentraler Standard
|
||||
existiert oder der Solution-Descriptor im Root Web vorhanden ist.
|
||||
|
||||
Reference in New Issue
Block a user