Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht
Navigation: Dokumentationen agorum core > agorum core Module und Plugins > agorum core client areas
Hinweis: Diese Dokumentation bezieht sich auf die aktuellste Version des Plugins agorum core client areas. Aktualisieren Sie das hier beschriebene Plugin, um die Dokumentation verwenden zu können.
Sie können die Mandantenverwaltung mit agorum core client areas flexibel erweitern und weitere Einstellmöglichkeiten für die Administrationsoberfläche ergänzen.
Dazu können Sie ein Handler-Skript mit den entsprechenden Erweiterungen schreiben und für die Verwendung registrieren. agorum core client areas wird mit einem Beispielskript ausgeliefert, das Sie als Beispiel für eigene Erweiterungen verwenden können.
Gehen Sie wie folgt vor, um ein eigenes Handlerskript auf Basis des mitgelieferten Skripts zu erstellen und für die Verwendung zu registrieren:
/agorum/roi/customers/agorum.client.areas/js/handler/area-handler-default.js
MAIN_MODULE_MANAGEMENT/customers/agorum.client.areas/handler/[ agorum.client.areas ]
Die Funktion run wird aufgerufen, nachdem ein Mandant erstellt oder geändert wurde oder Mandantenbenutzer angelegt oder geändert wurden. Dabei werden folgende Parameter mitgegeben:
Der Parameter data ist wie folgt aufgebaut:
Parameter | Beschreibung |
---|---|
identifier | Diese Angabe definiert einen globalen Identifier für die Mandantenkonfigurationen. Im Standard lautet dieser client-areas. Sie dürfen folgende Zeichen nicht verwenden: |
number | Definiert die eindeutige Nummer des Mandanten. Sie dürfen folgende Zeichen nicht verwenden: <, >, :, ", /, \, |, ?, * und Punkt am Ende. Der Wert muss zwischen 1 und 8 Zeichen liegen. |
addresses | Optionale Angabe von Adressen für den Mandanten. |
users | Optionale Angabe von Benutzern für diesen Mandanten. Alle Benutzer, die in dem Array mitgegeben werden, werden angelegt, sofern diese nicht vorhanden sind. |
Für weitere Details zu den Parametern siehe createArea.
Die Hilfsbibliothek helperFn ermöglicht die Anlage von Benutzergruppen und ACLs innerhalb eines Mandanten.
Funktion | Beschreibung | Beispiel |
---|---|---|
helperFn.createGroup | Die Funktion createGroup legt eine Benutzergruppe mit dem übergebenen Namen direkt im Mandantenbereich an und verknüpft diese mit den bereits vorhandenen Mandanten-Gruppen. Ist die angegebene Benutzergruppe bereits vorhanden, wird diese lediglich zurückgegeben. | let grpRead = helperFn.createGroup('inbox_read'); Die neue Benutzergruppe heißt inbox_read. |
helperFn.createAcl | Die Funktion createAcl legt ein ACL mit dem übergebenen Namen direkt im Mandantenbereich an. | let inboxAcl = helperFn.createAcl('inbox', [ { entity: grpRead.UUID, access: 'read', }, ]); Das ACL beinhaltet die Gruppe inbox_read mit read-Recht. |
helperFn.files | Die Funktion files beinhaltet das Ordner-Objekt für die mandantenspezifische Dokumentenverwaltung. | let folder = helperFn.files; Der Ordner wird auf Basis des Mandantennamens erstellt. |
helperFn.workspace | Die Funktion files beinhaltet das Ordner-Objekt für den mandantenspezifischen Workspace. | let folder = helperFn.workspace; Der Ordner wird auf Basis des Mandantennamens erstellt. |
Die Mandantenverwaltung mit agorum core client areas verwendet standardmäßig eine Grundstruktur für die Mandantenverwaltung (einen Standard-Typ). Mit diesem Standard-Typ werden die Objektstrukturen mit Zugriffsberechtigungen für verschiedene Mandanten unterhalb eines Ordners client-areas angelegt.
Wenn Sie Ihre Mandanten noch weiter kategorisieren oder aus einem anderen Grund verschiedene Mandantengruppen verwenden wollen, können Sie dafür weitere Mandantentypen anlegen:
/** * Here you can define identifiers, that should be selectable, when creating a new client */ exports.identifiers = [ { name: 'another-client-area', displayName: 'Custom-Typ', // enable/disable disabled: false, // optional acl, to control, who is allowed to see this identifier // this could be made dependent on a feature acl acl: null, }, ];
Ergebnis:
• In der Mandantenverwaltung unter > Administration > Konfiguration > Mandantenverwaltung muss beim Anlegen eines Mandanten zusätzlich der Mandantentyp ausgewählt werden.
• Die Mandanten werden in Strukturen entsprechend dem Mandantentyp abgelegt.
Sie können die Einstellungen, die in der Administrationsoberfläche für Mandanten verfügbar sind, um zusätzliche Einstellungen erweitern. Das ausgelieferte Handler-Skript liefert dazu eine Grundlage. Sie können das Beispiel aktivieren und für Ihre eigenen Zwecke anpassen:
// enable/disable disabled: false,
Ergebnis: In der Mandantenverwaltung unter > Administration > Konfiguration > Mandantenverwaltung können beim Anlegen/Bearbeiten eines Mandanten Weitere Einstellungen angegeben werden.
/agorum/roi/customers/agorum.client.areas/js/aguila/sample-client-settings.js
// use a widget for configuration, value-property is the input/output of the widget aon: { type: 'agorum.client.areas.sampleClientSettings', },
// optional acl, to control, who is allowed to see this button // this could be made dependent on a feature acl acl: null,
Sie können die Einstellungen, die in der Administrationsoberfläche für Adressen verfügbar sind, um zusätzliche Einstellungen erweitern. Das ausgelieferte Handler-Skript liefert dazu eine Grundlage. Sie können das Beispiel aktivieren und für Ihre eigenen Zwecke anpassen:
// enable/disable disabled: false,
Ergebnis: In der Mandantenverwaltung unter > Administration > Konfiguration > Mandantenverwaltung können beim Anlegen/Bearbeiten von Adressen zu Mandanten Weitere Einstellungen angegeben werden.
/agorum/roi/customers/agorum.client.areas/js/aguila/sample-address-settings.js
// use a widget for configuration, value-property is the input/output of the widget aon: { type: 'agorum.client.areas.sampleAddressSettings', },
// optional acl, to control, who is allowed to see this button // this could be made dependent on a feature acl acl: null,
Die Mandantenverwaltung mit agorum core client areas erlaubt standardmäßig die Einrichtung von Mandantenadministratoren in den Benutzereinstellungen. Sie könnten zusätzlich weitere Funktionen über die Benutzereinstellungen aktivierbar machen, etwa den Zugriff auf die weiteren Einstellungen für Mandanten, wenn Sie welche mit Zugriffsbeschränkung einrichten (siehe Mandanteneinstellungen ergänzen).
Wenn Sie weitere Benutzerfunktionen konfigurierbar machen wollen, können Sie dafür weitere Funktionen anlegen:
exports.features = [ { name: 'agorum.client.areas.clientExtraSettings', displayName: 'Weitere Einstellungen für Mandanten', description: 'Zugriff auf Weitere Einstellungen für Mandanten zulassen.', }, ];
Ergebnis:
• In der Mandantenverwaltung unter > Administration > Konfiguration > Mandantenverwaltung kann diese Funktion beim Anlegen eines Benutzers zusätzlich für den Benutzer aktiviert werden.