我使用的是Alfresco Community 5.0.d,我收到了以下错误。
ReferenceError: people is not defined
对于people-finder.js文件中的以下代码:
var currentUser = people.getPerson(person);
我想使用people方法进行进一步处理。反正有没有实现这个目标?
我的目标也是获取当前用户和搜索结果的所有组。
我知道的一种方法是对/ alfresco / service / api / people / {people}进行ajax调用?groups = true但这是实现此目的的一种昂贵方式。
有没有其他方法可以达到这个目的?
由于
答案 0 :(得分:4)
“people”根对象以及依赖于存储库层服务的任何其他对象都无法直接从Alfresco Share中运行的Web脚本访问。
答案 1 :(得分:1)
如果您想获取共享webscript中的所有当前用户详细信息,那么您可以使用user
Object获取它
例:
目前,我已使用admin
用户
我的webscript文件
test.get.js
model.user=user;
test.get.html.ftl
${user}
输出::
输出:: 中的{lastName =,userStatus = null,alfUserLoaded = 1489745903574, userStatusTime = NULL, alfUserGroups = GROUP_ALFRESCO_ADMINISTRATORS,GROUP_ALFRESCO_MODEL_ADMINISTRATORS,GROUP_ALFRESCO_SEARCH_ADMINISTRATORS,GROUP_EMAIL_CONTRIBUTORS,GROUP_SITE_ADMINISTRATORS, 的firstName =管理员, USERHOME =工作区:// SpacesStore / 7338666a-7a02-4ab6-aa3b-5a46d06074ee, id = admin,email = admin @ alfresco.com}
组列表
GROUP_ALFRESCO_ADMINISTRATORS,GROUP_ALFRESCO_MODEL_ADMINISTRATORS,GROUP_ALFRESCO_SEARCH_ADMINISTRATORS,GROUP_EMAIL_CONTRIBUTORS,GROUP_SITE_ADMINISTRATORS
如果您想在repo webscript中获取所有当前用户详细信息,那么您可以使用它来获取它
例:
目前我已使用admin
用户登录
我的repo webscript文件
test1.get.js
var users = people.getPerson(person.properties.userName);
var groups=people.getContainerGroups(users);
model["groups"] = groups;
test1.get.html.ftl文件
<#list groups as g>
${g.name}
</#list>
输出:
GROUP_ALFRESCO_ADMINISTRATORS GROUP_ALFRESCO_MODEL_ADMINISTRATORS GROUP_ALFRESCO_SEARCH_ADMINISTRATORS GROUP_EMAIL_CONTRIBUTORS GROUP_SITE_ADMINISTRATORS