Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/jenkins/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Liferay 如何在“中填充所有站点成员的名称”;可由“查看”;日历portlet的下拉列表?_Liferay_Liferay 6 - Fatal编程技术网

Liferay 如何在“中填充所有站点成员的名称”;可由“查看”;日历portlet的下拉列表?

Liferay 如何在“中填充所有站点成员的名称”;可由“查看”;日历portlet的下拉列表?,liferay,liferay-6,Liferay,Liferay 6,在日历portlet“添加事件”中,我们可以设置查看权限。但默认情况下,它会显示三个选项,即“可查看者”下拉列表、“任意一个(来宾角色)、站点成员和所有者”。 通过这些选项,我还想列出所有站点成员的名称……在添加新事件时,如果我选择了一个用户,则该事件应仅可由该特定用户查看……如果我选择了“站点成员”,则所有人都应能看到该事件 我想的一个解决方案是编辑“edit_event.jsp”。为此创建了一个钩子 下面的代码给出了“可查看者”下拉列表。。。。在这里我如何添加所有网站成员的名字也?它会在显示

在日历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将根据权限自动筛选它。这是我能想到的,我还没有想到这种方法的优点和缺点。