通过Atlassian Confluence中的Javascript获取用户组

时间:2014-08-01 11:59:57

标签: javascript confluence

是否可以使用存储在“自定义HTML”中的Javasrcipt获取Atlasian Confluence中当前登录用户所属的组?

我可以按如下方式获取当前登录的用户,但无法找到获取用户组的示例:

function getCurrentUserName(){
    var user;
    AJS.$.ajax({
        url: "/rest/gadget/1.0/currentUser",
        type: 'get',
        dataType: 'json',
        async: false,
        success: function(data) { user = data.username; }
    });
    return user;
}

2 个答案:

答案 0 :(得分:0)

如果没有一点服务器端的帮助,你就无法在JavaScript中访问它......

Confluence Admin中编辑主要布局外观和感觉布局

</head>标记之前添加:

#if($action.authenticatedUser)
    #set($groupNames = $userAccessor.getGroupNames($action.authenticatedUser))
    <meta name="ajs-group-names-csv" content="#foreach($group in $groupNames)$group,#end">
#end

在您的Javascript中,您现在可以使用AJS.params.groupNamesCsv

访问这些群组

这将返回如下内容:

"confluence-administrators,confluence-users,"

答案 1 :(得分:0)

dvdsmpsn 提供的答案对我有用。但是,我不得不在 Confluence 中的自定义 HTML > BODY 末尾使用 (AJS.Meta.get('group-names-csv').includes("text123"))。