提供plone站点特定区域的“成员资格”
collective.workspace的Python项目详细描述
集体工作区
简介
提供plone站点特定区域“成员资格”的collective.workspace包。
它允许您使用成员组而不是每个用户的本地角色授予用户对内容区域的访问权限,并将对该组的控制权委托给无权访问站点范围的用户/组控制面板的用户。
collective.workspace提供了可以为任何灵活内容类型启用的行为。启用后,它会添加一个“花名册”选项卡,您可以在其中管理团队。
所有功能都是通过iWorkspace适配器实现的,可以重写该适配器以指定:
- 组的列表,以及每个组应接收的角色。这些组通过pas插件自动创建,并使用borg.localrole适配器自动授予本地角色。
- 应为花名册中的每个成员存储字段的架构。这包括组的复选框,以确定成员所在的组。
- 花名册中每一行的操作链接。默认设置是一个“编辑”链接,它会弹出一个弹出窗口来编辑该人员排班成员资格的字段。
- 应用于用户选择的行的排班底部的操作按钮。这方面的一个例子是“发送电子邮件”操作,这样花名册管理员可以轻松地向花名册中的用户发送电子邮件。
与以前类似的包(请参阅slc.teamfolder和collective.local.*)不同,collective.workspace提供了自己的pas groups插件,而不是使用标准的plone groups。这意味着特定于工作区的组不会出现在站点范围的组控制面板中。
其他一些功能包括:
- 花名册中的成员资格已编入索引,因此您可以在目录中搜索具有特定用户的X类门户项目。
- 添加/修改/删除排班成员身份时触发事件。
基本安装
- 将collective.workspace添加到构建鸡蛋中。
- 在plone站点设置的“加载项”部分安装collective.workspace。
- 在您的灵巧内容类型上启用行为(使用genericsetup或网站设置->;灵巧内容类型)。
自定义工作区组
工作区中可用的默认组为“members”和“admins”。通过添加自定义iWorkspace适配器,您可以自定义可用的组及其默认权限:
configure.zcml
<adapterfor="mypackage.MyContentType"provides="collective.workspace.interfaces.IWorkspace"factory=".adapters.MyWorkspace"/>
adapters.py
fromcollective.workspace.workspaceimportWorkspaceclassMyWorkspace(Workspace):""" A custom workspace behaviour, based on collective.workspace """# A list of groups to which team members can be assigned.# Maps group name -> rolesavailable_groups={u'Supervillians':('Reader',),u'Superheroes':('Reader','Contributor','Reviewer','Editor',),}
贡献者
- David Glick-原作者
- Adam Forsythe Cheasley-文档/测试
- Ben Cole-文档/测试
- Matthew Sital Singh-文档
- Paul Grunewald-德语翻译
更改日志
1.3(2016-06-29)
- 添加了i18n域的msgid
- 增加了德语翻译
- 添加、删除或更新排班条目后显示状态消息。
- 修复了缓存问题
1.2(2016-06-22)
- 性能改进
- 组的智能缓存,以及更改工作区时的缓存失效
- 添加了一个新角色teamguest,可用于授予减少的访问权限 工作区的权限
1.1(2014-07-04)
- 固定分配问题
1.0(2014-07-04)
- 初始版本