我有两个基本相似的Plone站点;一个document_view在文档标题下面显示作者和创建日期信息,另一个则没有。我发现这些信息来自DocumentBylineViewlet (正如我在plone.app.layout-2.3.11-py2.7.egg/plone/app/layout/viewlets/document_byline.pt中编写文件名所验证的那样),并且在@@security-controlpanel中有一个allow_anon_views_about设置。
但是,即使对于大多数经过身份验证的用户,我也想省略这些信息;例如,即使是登录的用户,联系人页面的“创建者”和“最后更改时间”信息也没有意义。(这主要是一个光学问题;如果信息仍然在HTML头中的某个地方,我没有问题。)
我发现这个viewlet受到zope2.View权限的约束。我可以想象使用另一个我可以映射到某个角色的权限,例如,仅向允许自己应用更改的用户显示此类信息。
是否有建议的使用权限,以及如何配置我的系统以使用它?还是有一种更好的、完全不同的方式?
(我发现的唯一另一种方法是通过CSS隐藏.documentByLine元素...)
发布于 2015-10-29 02:36:19
如果你想隐藏署名的所有元素,@tcurvelo提供的答案是可以的。
如果不是这样:安装rt.lastmodifier会给你提供关于谁可以看到署名中的单个项目的超级权限。请查看文档。
发布于 2015-10-29 01:22:38
您可以将plone.belowcontenttitle.documentbyline viewlet TTW隐藏在@@manage-viewlets中,或者,如果您愿意,也可以永久隐藏在viewlets.xml文件中。
发布于 2015-10-29 01:36:49
您可以通过(yoursite)/portal_view_customizations/registrations.html更改ZMI中使用的模板,它列在zope.interface.Interface下面。
在最简单的情况下,您可以使用
<div class="documentByLine"
id="plone-document-byline"
i18n:domain="plone"
tal:condition="view/show">在顶部(view/show调用计算您提到的标志的代码),并将tal:condition="view/show"替换为
tal:condition="python: context.portal_membership.checkPermission('cmf.ReviewPortalContent', self.context)"或者类似的。Plone文档有一个(部分) list of permissions。我使用了"Review portal content“作为示例,因为它方便地绑定到审阅者角色,而在我的日常工作安装中,审阅者角色没有任何用处。
https://stackoverflow.com/questions/33395329
复制相似问题