Liferay 如何在“中填充所有站点成员的名称”;可由“查看”;日历portlet的下拉列表?
在日历portlet“添加事件”中,我们可以设置查看权限。但默认情况下,它会显示三个选项,即“可查看者”下拉列表、“任意一个(来宾角色)、站点成员和所有者”。 通过这些选项,我还想列出所有站点成员的名称……在添加新事件时,如果我选择了一个用户,则该事件应仅可由该特定用户查看……如果我选择了“站点成员”,则所有人都应能看到该事件 我想的一个解决方案是编辑“edit_event.jsp”。为此创建了一个钩子 下面的代码给出了“可查看者”下拉列表。。。。在这里我如何添加所有网站成员的名字也?它会在显示事件时自动检查吗?请帮忙Liferay 如何在“中填充所有站点成员的名称”;可由“查看”;日历portlet的下拉列表?,liferay,liferay-6,Liferay,Liferay 6,在日历portlet“添加事件”中,我们可以设置查看权限。但默认情况下,它会显示三个选项,即“可查看者”下拉列表、“任意一个(来宾角色)、站点成员和所有者”。 通过这些选项,我还想列出所有站点成员的名称……在添加新事件时,如果我选择了一个用户,则该事件应仅可由该特定用户查看……如果我选择了“站点成员”,则所有人都应能看到该事件 我想的一个解决方案是编辑“edit_event.jsp”。为此创建了一个钩子 下面的代码给出了“可查看者”下拉列表。。。。在这里我如何添加所有网站成员的名字也?它会在显示
<c:if test="<%= event == null %>">
<aui:field-wrapper label="permissions">
<liferay-ui:input-permissions
modelName="<%= CalEvent.class.getName() %>"
/>
</aui:field-wrapper>
</c:if>
事件Portlet?你的意思是说日历Portlet吗?哦,是的,日历Portlet。对不起,我弄错了。。此代码将创建一个新的下拉列表“用户”,并填充角色中的所有用户。但是如何将其与“可查看者”下拉列表中的所有用户的问题一起发布的代码合并?下拉列表可查看者
列出了一些最常见的角色,而不是单个用户。正如所见,它使用liferay的
标记,因此您必须使用一个钩子来修改这个标记,这一点都不是一个好主意,因为它还会影响其他portlet。此外,此可查看的只是默认设置,仅在添加事件时显示,而在编辑事件时不会显示,因为在编辑时,您可以将此事件的权限更改为其他角色。因此,您必须采用其他方法。我能想到的一件事是将用户映射到某些角色[与用户同名],即每个用户都有一个同名的角色。然后,您可以通过某种方式将userId传递到后端,通过struts操作或包装器钩子或两者,您可以删除日历事件的所有权限,并使用username将角色分配给事件。这样,liferay将根据权限自动筛选它。这是我能想到的,我还没有想到这种方法的优点和缺点。