Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht
Navigation: Dokumentationen agorum core > agorum core JavaScript-API
Mithilfe dieser Java-Klasse fragen Sie diverse Kontexte zur Session des aktuell angemeldeten Benutzers ab.
Der SessionController ist eine Variable (sc), die in jedem Skript zur Verfügung steht.
Die Session des angemeldeten Benutzers ist als globale Variable verfügbar und trägt den Namen sc.
/* global sc */ let value = sc.field;
Fragt den aktuell angemeldeten Benutzer der Session ab.
Syntax
Name des Benutzers
let loginUser = sc.loginUser.name;
ID des Benutzers
let loginUser = sc.loginUser.ID;
Parameter
Beispiele
Name des Benutzers
/* global sc */ let loginUser = sc.loginUser.name; loginUser;
ID des Benutzers
/* global sc */ let loginUser = sc.loginUser.ID; loginUser;
Rückgabewerte
Sie erhalten entweder den Namen oder die ID des aktuell angemeldeten Benutzers der Session zurück.
Name des Benutzers
roi
ID des Benutzers
11000
Verwendung
Diese Methode verwenden Sie, wenn Sie den Namen oder die ID des aktuell angemeldeten Benutzers der Session erhalten möchten.
Exceptions
Zu dieser Methode existieren keine Exceptions.
Frag die UUID des aktuell angemeldeten Benutzers der Session ab.
Syntax
let loginUserUuid = sc.loginUserUuid;
Parameter
Zu dieser Methode existieren keine Parameter.
Beispiel
/* global sc */ let loginUserUuid = sc.loginUserUuid; loginUserUuid;
Rückgabewerte
Sie erhalten die UUID des aktuell angemeldeten Benutzers der Session zurück.
714614d0-ce62-11e0-b47a-0800276e2399
Verwendung
Diese Methode verwenden Sie, wenn Sie die UUID des aktuell angemeldeten Benutzers der Session erhalten möchten.
Exceptions
Zu dieser Methode existieren keine Exceptions.
Fragt die Spracheinstellung der Session ab.
Syntax
let locale = sc.locale;
Parameter
Zu dieser Methode existieren keine Parameter.
Beispiel
/* global sc */ let locale = sc.locale; locale;
Rückgabewerte
Sie erhalten die Spracheinstellung der Session zurück. Es handelt sich dabei um ein java.util.Locale-Objekt.
"de"
Verwendung
Diese Methode verwenden Sie, wenn Sie die Spracheinstellung der Session erhalten möchten.
Exceptions
Zu dieser Methode existieren keine Exceptions.
Fragt ab, ob sich die Session im Adminmodus oder im normalen Benutzermodus befindet.
Syntax
let adminEnabled = sc.adminEnabled;
Parameter
Zu dieser Methode existieren keine Parameter.
Beispiel
/* global sc */ let adminEnabled = sc.adminEnabled; adminEnabled;
Rückgabewerte
Sie erhalten einen booleschen Wert zurück.
Wert | Beschreibung |
---|---|
true | Die Session befindet sich im Adminmodus. |
false | Session befindet sich im normalen Benutzermodus. |
Verwendung
Diese Methode verwenden Sie, um herauszufinden, ob sich die Session im Adminmodus oder im normalen Benutzermodus befindet.
Exceptions
Zu dieser Methode existieren keine Exceptions.
Nimmt die aktuelle Sitzung und erzeugt einen temporären SessionController, bei dem der Adminmodus aktiviert ist.
Syntax
let asAdmin = sc.asAdmin();
Parameter
Zu dieser Methode existieren keine Parameter.
Beispiel
/* global sc */ let asAdmin = sc.asAdmin(); // objects-Bibliothek mit dieser neuen Session laden let objectsAdmin = require('common/objects').sc(asAdmin); // Mit der objects-Bibliothek als Admin weiterarbeiten, um etwa den Ordner "Testordner" unter "Eigene Dateien" des Benutzers zu erstellen objectsAdmin = objectsAdmin.find('home:myFiles/Testordner:create');
Rückgabewerte
Diese Methode liefert keine Werte zurück.
Verwendung
Diese Methode verwenden Sie, wenn Sie etwas mit dem aktuell angemeldeten Benutzer durchführen wollen, dessen Rechte aber nicht ausreichen.
Exceptions
Zu dieser Methode existieren keine Exceptions.
Nimmt die aktuelle Sitzung und erzeugt einen temporären SessionController, bei dem der Servicemodus aktiviert ist.
Beim Servicemodus:
und den lastModifier nicht, wenn ein Objekt aktualisiert wird
Syntax
let asService = sc.asService();
Parameter
Zu dieser Methode existieren keine Parameter.
Beispiel
/* global sc */ let asService = sc.asService(); // objects-Bibliothek mit dieser neuen Session laden let objectsService = require('common/objects').sc(asService); // Mit der objects-Bibliothek im Servicemodus weiterarbeiten, um etwa einen Benutzer zu aktualisieren, ohne das lastModifyDate zu ändern. objectsService = objectsService.update('user', objects.find('user:USERNAME'), { name: 'testuser', password: 'testpass', admin: false, givenName: 'Test', familyName: 'User', language: 'de', emailAddresses: [ 'testuser@agorum.com' ] });
Rückgabewerte
Sie erhalten den erzeugten SessionController zurück.
4615452
Verwendung
Diese Funktion verwenden Sie, wenn Sie mit Objekten arbeiten und wünschen, dass das System:
Exceptions
Zu dieser Methode existieren keine Exceptions.
Nimmt die aktuelle Sitzung und erzeugt einen temporären SessionController, bei dem das System den aktuellen Benutzer auf den angegebenen Benutzer ändert.
Syntax
let asUser = sc.asUser(user);
Parameter
Parameter | Beschreibung | Pflicht | Standard-Wert | Weitere Informationen |
---|---|---|---|---|
user | Definiert den Benutzer, mit dem Sie in der aktuellen Sitzung weiterarbeiten möchten. Wenn Sie den Benutzer anhand des Namens suchen wollen, verwenden Sie objects.find. |
ja | – | Beispiel |
/* global sc */ let objects = require('common/objects'); let asUser = sc.asUser(objects.find('user:demo')); // objects-Bibliothek mit dieser neuen Session laden let objectsUser = require('common/objects').sc(asUser); // Mit der objects-Bibliothek als Benutzer "demo" weiterarbeiten, um etwa den Ordner "Testordner" unter "Eigene Dateien" des Benutzers zu erstellen objectsUser = objectsUser.find('home:myFiles/Testordner:create');
Für Beispiele zum Suchen von Objekten siehe JavaScript-Bibliothek common/objects.
Rückgabewerte
Sie erhalten den erzeugten SessionController zurück.
4615452
Verwendung
Diese Methode verwenden Sie, wenn Sie etwa im Namen eines anderen Benutzers mit agorum core arbeiten möchten.
Exceptions
Zu dieser Methode existieren keine Exceptions.
Fragt das Benutzerobjekt zu einer E-Mail-Adresse ab.
Syntax
let user = sc.getDirectoryUserFromEmailAddress('string');
Parameter
Parameter | Beschreibung | Pflicht | Standard-Wert | Weitere Informationen |
---|---|---|---|---|
string | Definiert die E-Mail-Adresse. | ja | – | Beispiel |
/* global sc */ let user = sc.getDirectoryUserFromEmailAddress('demo@agorumcore.com'); user;
Rückgabewerte
Sie erhalten das Benutzerobjekt zurück, zu dem die angegebene E-Mail-Adresse zugeordnet ist.
1025764
Verwendung
Diese Methode verwenden Sie, wenn Sie zu einer E-Mail-Adresse den zugeordneten Benutzer erfahren möchten.
Exceptions
Zu dieser Methode existieren keine Exceptions.
Erzeugt für die gegebene Kombination aus Benutzer-/Benutzergruppenobjekt, Berechtigung und Suffix eine entsprechende ACL oder gibt die zugehörige ACL zurück, wenn sie bereits existiert.
Syntax
let acl = sc.getEntityAcl(userOrGroup, permissions, prefix);
Parameter
Parameter | Beschreibung | Pflicht | Standard-Wert |
---|---|---|---|
userOrGroup | Definiert den Benutzer oder die Benutzergruppe, für die das System die ACL zurückgibt. | ja | – |
permissions | Definiert eine Zeichenkette mit der Angabe, welche Berechtigungen das System setzt. Mögliche Werte
|
ja | – |
prefix | Definiert eine Bezeichnung, die das System zur Kennzeichnung der ACL verwendet. Häufig ist das der Name des Kontexts (Paket, Modul), in dem Sie diese einsetzen möchten. |
ja | – |
Beispiel
Dieses Beispiel zeigt die Anwendung der Methode, um eine ACL für den Benutzer demo im Kontext von my_package_ zurückzuliefern, die ihm Leserechte gewährt.
/* global sc */ let objects = require('common/objects'); let user = objects.find('user:demo'); let acl = sc.getEntityAcl(user, 'READ', 'my_package_'); acl;
Rückgabewerte
Sie erhalten das ACL-Objekt zurück, das auf die übergebene Beschreibung passt.
Verwendung
Diese Methode verwenden Sie, wenn Sie für einen gegebenen Benutzer/eine gegebene Benutzergruppe eine ACL benötigen, die ihm ein bestimmtes Recht gibt.
Bibliotheken, die mit Objekten arbeiten (wie die JavaScript-Bibliothek common/objects), verwenden im Standard die global verfügbare Sitzung sc für ihre Operationen. Eine davon abweichende Sitzung verwenden Sie etwa folgendermaßen:
/* global sca */ let objects = require('common/objects').sc(sca); let object = objects.find('/not/visible/to/current/user');
Dieses Beispiel verwendet abweichend die administrative Sitzung sca, um das Objekt /not/visible/to/current/user zu finden, das der aktuell angemeldete Benutzer nicht sehen kann.
sca können Sie in diesen Bibliotheken verwenden: