成员可以邀请新成员;只有被邀请者才能注册
项目描述
关于PloneInvite
PloneInvite是Plone的一个工具,允许门户网站成员邀请新用户注册到门户网站。门户网站管理员将邀请码分配给门户网站成员,成员可以使用这些邀请码发送邀请。
使用方法
对于门户网站管理员
以门户网站管理员身份登录,转到网站设置并单击成员邀请链接。
在本页面上,您可以邀请其他用户并为门户邀请设置有效期限(天数)。
对于成员
登录后,在搜索框下方即可打开邀请链接。
此页面允许成员发送邀请并查看他们邀请的状态。
安装
将 Products.PloneInvite 添加到您的 buildout 中
通过 Plone 的插件产品配置(@@prefs_install_products_form)安装产品
开发者
想要开发此产品(添加翻译)的人可能想使用 buildout
$ svn co https://svn.plone.org/svn/collective/Products.PloneInvite/trunk/buildout ploneinvite $ cd ploneinvite $ python2.4 bootstrap.py $ ./bin/buildout
默认情况下为 Plone 3 开发。对于 Plone 4,进入 buildout-dvl.cfg 并取消注释并注释掉相关行。
buildout 应创建(通过 plone.recipe.plonesite)一个 ID 为 ploneinvite 的 Plone 网站,并安装产品。
功能
将邀请分配给用户。
管理员可以强制在邀请中使用电子邮件(邀请人使用与发送邀请相同的电子邮件地址注册)
邀请到期日期
邀请人可以强制使用电子邮件
用户只有拥有邀请码才能注册
管理员可以添加没有邀请码的用户
可以自定义邀请电子邮件消息(修改页面模板)
配置
自定义邀请电子邮件
转到 ZMI
转到 portal_skins,到 plone_invite,选择 invite_template,自定义它
自定义邀请发送者地址
默认情况下,用作邀请电子邮件中“发送者”的电子邮件地址是站点的全局电子邮件地址。您可以通过“@@mail-controlpanel”更改它。
如果您想使用与站点地址不同的发送者地址
转到 ZMI
转到 plone_invite 工具,转到“属性”选项卡,修改 plone_invite_email_address
自定义谁可以将邀请码委托给用户
如果您转到 ZMI 并查看您门户的安全设置,您将找到以下权限
PloneInvite:生成门户邀请
PloneInvite:邀请门户用户
PloneInvite:邀请门户用户
如果您想让一组选定的用户能够分发邀请,只需在 ZMI 中添加一个新角色“InvitationGivers”,给此角色“PloneInvite:生成门户邀请”权限(仍处于 ZMI 中),并在 Plone 中创建一个具有此角色和这些用户的组,现在这些用户应该能够使用“user_invites”表单。
需求
测试于
Plone 3.2.1,CMF 2.1.2,Zope 2.10.6-final
Plone 3.3b1,CMF 2.1.2,Zope 2.10.7-final
Plone 3.3.3,CMF 2.1.2,Zope 2.10.9-final
Plone 3.3.5,Zope 2.10.11
Plone 版本兼容性
此产品的最新版本仅与 Plone 3 兼容。
没有 Plone 4 的发布。在存储库中有一个 Plone 4 的分支,但它没有积极开发。
1.0.2 版本与 Plone 2.5 兼容。
警告
该产品依赖于对 join_form 的修改来提供其功能。将此产品与另一个也修改 join_form 的产品一起使用将不起作用。
升级
1.1 / 1.1-alpha 到 1.1.2 或更高版本
通过在 plone 产品安装程序中单击升级进行升级不会进行完整的升级,因为该工具已经安装,并且不会获取新属性“plone_invite_email_address”。但是,您可以通过 ZMI 手动添加此属性(通过 ZMI)到已存在的工具中。
致谢
由 Partecs Participatory Technologies 的 Giovani Spagnolo 创建。
由 Goldmund, Wyldebeast & Wunderliebe 的 Kees Hink 维护。
翻译
德语(de):Hartmut Goebel
CHANGES
1.1.6 (2010-09-13)
添加西班牙语翻译 [macagua]
改进翻译支持 [macagua]
1.1.5 (2010-06-16)
错误修复:在发送邀请时允许“mesaage”字段包含特殊字符。(http://plone.org/products/plone-invite/issues/3)
1.1.4 (2010-05-05)
错误修复:拥有权限“PloneInvite: Generate Portal Invites”的成员现在可以查看user_invites(参考 http://plone.org/products/plone-invite/issues/2)
错误修复:user_invites现在只有在用户有权限设置PloneInvite工具的“days”属性时才显示“天数”字段。如果非特权成员尝试生成邀请,这会在invite_codes.cpy中引起“未授权”错误。(参考 http://plone.org/products/plone-invite/issues/2)
为非Manager成员添加了user_invites的用户操作链接,以生成邀请。还添加了nl和de翻译。(参考 http://plone.org/products/plone-invite/issues/2)
1.1.3 (2010-01-18)
添加了德语(de)翻译,感谢Hartmut Goebel
在TODO中添加了Hartmut的一些额外功能想法
添加了一些关于“自定义谁可以将邀请码委托给用户”的文档
1.1.2 (2010-01-04)
修复了从config.py导入未使用的‘INVITE_EMAIL’变量的问题
删除了PloneInvite电子邮件地址的网站属性设置
1.1.1 (2010-01-04)
修复了邀请电子邮件的发件人地址被留空的问题
向工具添加了属性‘plone_invite_sender_address’以替换网站的‘email_from_address’。
1.1 (2009-12-01)
修复了Plone 3兼容性问题。
由于Plone 3中的@@authenticator(在Plone 3的join_form中被调用)在Plone 2.5中不可用,因此与Plone 2.5不兼容。
将权限名称从“PortalInvite: …”更改为“PloneInvite: …”。
进行了少量修改,以便在Plone 3下运行,最值得注意的是在发送前对电子邮件进行编码
启用了自我注册(网站上的“添加门户成员”权限),这是启用新成员自我注册所需的。自我注册由join_form上的验证保护,因此人们只能使用邀请码进行注册。
禁用了默认的info@yoursite.com,使用网站范围的email_from_address作为默认值。(仍可通过config.py自定义)
禁用了覆盖邮件主机设置的选项。(install.py曾经将门户的邮件主机设置重置为localhost:25)
默认启用对新用户生成邀请(5个邀请),这可能是大多数网站想要的。应在Plone产品设置配置集中进行配置。
在invite.cpy中禁用了裸的try-except块
翻译
添加了PloneInvite.pot和plone.pot
添加了Makefile,以便轻松创建和更新翻译(.po)文件
添加了荷兰语翻译
修复了user_invites模板表格中的错误,该错误仅显示未设置enforce_address的邀请
修复了Extensions/Install.py中的错误,该错误向用户操作添加了两个‘invite_form’链接
在控制器脚本中添加了“FakeMessageFactory”类,用于翻译,请参阅fakemessagefactory.py
1.0.2 (2006-04-10)
首次公开发布。
待办事项
测试/修复过期功能(邀请在可配置的时间后过期)
允许在配置集中修改邀请电子邮件的“发件人”(目前通过ZMI)
修改配置集以允许修改要分配给新用户的邀请数量。(默认为5)
重新安装时不要丢失邀请。实际上,重新安装不会丢失邀请,但卸载会:它会删除plone_invite工具(其中包含邀请)。因此,我们正在寻找另一个地方来存储邀请,这样在卸载时就不会被删除(使卸载不那么干净,但无论如何)。
允许指定的用户或组拥有“无限”邀请。
在邀请用户时,应该能够将他放入组中(至少如果邀请者是Manager)。因此,Manager可以直接邀请新用户加入某个组(该组定义了访问权限)。
在委托邀请时不要生成邀请,而只存储用户剩余的邀请数量。然后在需要时按需生成邀请码。已使用的邀请码仍按当前方式存储。
- 代码清理和改进
在以下地方使用getToolByName而不是依赖于Acquisition:- send_invite_codes.cpy
在PloneInvite.py中按名称导入权限
项目详情
Products.PloneInvite-1.1.6.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d8555f95469a2caf6e0d27b914c78f62941cef5c803ac6212f005f636f06e005 |
|
MD5 | 87328f828cacbb6fe6da1c9c1d87cee6 |
|
BLAKE2b-256 | 755a733f25ca6bff7bfe41be04c92c7ec30bc970a7552ee91666374836289e7e |