Logotype Sitevision Developer
Log in
Log in

How do I find the current user and its properties?

Use a combination of PortletContextUtil and Properties to extract the current user and its properties.

Published: 2022-07-22  |  Updated: 2024-09-26

In order to get the current user (as a JCR Node) the method getCurrentUser of PortletContextUtil is used.

To extract properties from a node in Sitevision either Properties or PropertyUtil can be used. This example will use Properties.

Step 1 - Get instances of utilities

For WebApp/RESTApp - use import:

js
import portletContextUtil from '@sitevision/api/server/PortletContextUtil'; import properties from '@sitevision/api/server/Properties';

For Script module - use require:

js
const portletContextUtil = require('PortletContextUtil'); const properties = require('Properties');

Step 2 - Make use of the utilities

js
// Get the current user (JCR Node) const currentUser = portletContextUtil.getCurrentUser(); // Get a single property const currentUserMail = properties.get(currentUser, 'mail'); // Get a number of properties as an object const currentUserData = properties.get( currentUser, 'displayName', 'mail', 'telephoneNumber', 'title' ); /* currentUserData will be an object: { displayName: 'Anna Andersson', mail: 'anna.andersson@mail.com', telephoneNumber: '0123456789', title: 'Key account manager' } */

Regarding properties

What properties there is to extract from each node type is documented on the node types page.

Note regarding user types

In Sitevision there are 3 types of users:

Note that available properties vary between the user types. If a property which is not available for the user type is being requested, null will be returned.