Expand my Community achievements bar.

Get current logged in user in clientlibs AEM 6.4

Avatar

Level 6

How to get current logged in user in clientlibs  ,AEM 6.4

6 Replies

Avatar

Level 6

function getLoggedInUserID() {

        var currentUserId = "";

        var currentUserInfo;

        var CURRENT_USER_JSON_PATH = Granite.HTTP.externalize('/libs/granite/security/currentuser.json');

        var result = Granite.$.ajax({

            type: "GET",

            async: false,

            url: CURRENT_USER_JSON_PATH

        });

        if (result.status === 200) {

            currentUserInfo = JSON.parse(result.responseText);

            currentUserId = currentUserInfo.authorizableId;

        }

        return currentUserId;

    }

Avatar

Community Advisor

In author mode, we can read the current user/details by below variable

CQ_User

CQ_User.data.userID

Screen Shot 2018-12-13 at 9.55.18 AM.png

Hope this helps

Avatar

Community Advisor

Hi Ravi,

I've just checked this in 6.3 and found CQ_User.data.userID works only in Classic UI whereas Granite.HTTP.externalize('/libs/granite/security/currentuser.json'); Ajax approach is compatible with both UI.



Arun Patidar

Avatar

Community Advisor

Hi Arun,

Thanks for the details. But when I tried in AEM 6.4 and AEM 6.4 SP2 I am able to see CQ_User variable, not sure whether it is added back

Screen Shot 2018-12-13 at 10.21.09 AM.png

Avatar

Community Advisor

Ahh ok, that means it is available in current version of AEM 6.4



Arun Patidar