This server-side class allows to get information about the current user and his prerequisites, for example, assigned roles and preferences.
getAccessToken()
This method returns access token of the current user within the current session.
In some cases it returns an empty string. These cases are:
- calling this method within any scheduled functionality (for example, Scheduled Script)
- calling this method by any other functionality without any direct user actions and collateral client-side requests
Return:
getContext()SimpleRecord objectThis method returns the current attribute objectMethod returns the current user access token. If it is not set, then an empty string is returned. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getContextgetAccessToken |
---|
linenumbers | true |
---|
|
const recorduser = new SimpleUser();
let user = record.getContextss.info(user.getAccessToken()); // Info: PV8wLSJWEJONyvF87aIQn2b--7EMEhy_ |
getContext()
This method allows to get current user information given the context (whether this is the system user or an employee having additional attributes against regular users).
Return:
Type | Description |
---|
SimpleRecord object | This method returns an object containing the current user information. |
Example:
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getContext |
---|
linenumbers | true |
---|
|
const user = new SimpleUser(); or employee attributes
ss.info(recorduser.hasRolegetContext('admin').username); // Info: admin |
getID()
This method gets the current user ID.
Return:
Type | Description |
---|
String | Current user ID. |
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getID |
---|
linenumbers | true |
---|
|
const user = new SimpleUser(); | false
ss.info("Does this user have the security admin role? " + record.hasRole('security_admin'.getID()); // Info: 155931135900000099 |
getPreference(preferenceName)
This method allows to get a value of the specified User Preference for the current user.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
preferenceName | String | Y | N |
Return:
Type | Description |
---|
String | This method returns the specified preference value for the current user. If the specified preference does not exist, it returns 'null'. |
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | getPreference |
---|
linenumbers | true |
---|
|
const user = new SimpleUser(); | false
ss.info("Is the navigator menu pinned? " + recorduser.getPreference('menu.pinapplication')); // -1 / 0 / 1
record.setPreference('New user preference', 'MenuInfo: 155931135900000002 |
hasRole(role)
This method allows to find out whether the current user is granted with a specified role or not. It always returns true if the current user has the admin role.
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
role | String | Y | N |
Return:
Type | Description |
---|
Boolean | This method returns 'true' if user is granted with a specified role; otherwise, it returns 'false'. |
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | hasRole |
---|
linenumbers | true |
---|
|
const user = new SimpleUser();
ss.info(user.hasRole('service_owner pinning');
ss.info("New preference value: " + record.getPreference('New user preference')); //Menu pinning
ss.info("not existing preference: Info: false |
setPreference(preferenceName, value)
Use this method to set a value for the User Preference settings of the current user.
The system creates a preference with the given name for the current user if such a preference did not exist before.
Warning |
---|
The value parameter must be no longer than 255 symbols. |
Parameter(s):
Name | Type | Mandatory | Default Value |
---|
preferenceName | String | Y | N |
value | String | Y | N |
Return:
Type | Description |
---|
Void | This method does not return a value. |
Code Block |
---|
language | js |
---|
theme | Eclipse |
---|
title | setPreference |
---|
linenumbers | true |
---|
|
const user = new SimpleUser();
user.setPreference('language', 'en'); " + record.getPreference('non-existing preference')); //null
ss.info(user.usernamegetPreference('language')); //admin |
getID()