plone.app.discussion/plone/app/discussion/browser/configure.zcml

134 lines
4.3 KiB
XML

<configure
xmlns="http://namespaces.zope.org/zope"
xmlns:browser="http://namespaces.zope.org/browser"
xmlns:zcml="http://namespaces.zope.org/zcml"
i18n_domain="plone.app.discussion">
<include package="plone.app.registry" />
<!-- Traversal adapter -->
<adapter factory=".traversal.ConversationNamespace" name="conversation" />
<!-- Migration view -->
<browser:page
for="Products.CMFCore.interfaces.ISiteRoot"
name="comment-migration"
layer="..interfaces.IDiscussionLayer"
class=".migration.View"
permission="cmf.ManagePortal"
/>
<!-- Moderation view -->
<browser:page
for="Products.CMFCore.interfaces.ISiteRoot"
name="moderate-comments"
layer="..interfaces.IDiscussionLayer"
class=".moderation.View"
permission="plone.app.discussion.ReviewComments"
/>
<browser:page
for="plone.app.layout.navigation.interfaces.INavigationRoot"
name="moderate-comments"
layer="..interfaces.IDiscussionLayer"
class=".moderation.View"
permission="plone.app.discussion.ReviewComments"
/>
<!-- Moderation bulk actions view -->
<browser:page
for="Products.CMFCore.interfaces.ISiteRoot"
name="bulk-actions"
layer="..interfaces.IDiscussionLayer"
class=".moderation.BulkActionsView"
permission="plone.app.discussion.ReviewComments"
/>
<browser:page
for="plone.app.layout.navigation.interfaces.INavigationRoot"
name="bulk-actions"
layer="..interfaces.IDiscussionLayer"
class=".moderation.BulkActionsView"
permission="plone.app.discussion.ReviewComments"
/>
<!-- Delete comment view -->
<browser:page
for="plone.app.discussion.interfaces.IComment"
name="moderate-delete-comment"
layer="..interfaces.IDiscussionLayer"
class=".moderation.DeleteComment"
permission="plone.app.discussion.ReviewComments"
/>
<!-- Publish comment view -->
<browser:page
for="plone.app.discussion.interfaces.IComment"
name="moderate-publish-comment"
layer="..interfaces.IDiscussionLayer"
class=".moderation.PublishComment"
permission="plone.app.discussion.ReviewComments"
/>
<!-- Comments viewlet -->
<browser:viewlet
name="plone.comments"
for="Products.CMFCore.interfaces.IContentish"
layer="..interfaces.IDiscussionLayer"
manager="plone.app.layout.viewlets.interfaces.IBelowContent"
view="plone.app.layout.globals.interfaces.IViewView"
class=".comments.CommentsViewlet"
permission="zope2.View"
/>
<!-- Comment form extender -->
<configure zcml:condition="have plone.app.discussion-captcha">
<!--
Register the Captcha form extender and validator only if there are
plugins installed that declare to implement a Captcha solution for
plone.app.discussion (e.g. plone.formwidget.captcha and
plone.formwidget.recaptcha).
-->
<adapter
factory=".captcha.Captcha"
provides="plone.app.discussion.interfaces.ICaptcha" />
<adapter
factory=".captcha.CaptchaExtender"
provides="plone.z3cform.fieldsets.interfaces.IFormExtender" />
<adapter
factory=".captcha.CaptchaValidator"
/>
</configure>
<!-- Comment view -->
<browser:view
name="view"
for="plone.app.discussion.interfaces.IComment"
layer="..interfaces.IDiscussionLayer"
class=".comment.View"
permission="zope2.View"
/>
<!-- Resource directory for javascripts -->
<browser:resourceDirectory
name="plone.app.discussion.javascripts"
directory="javascripts"
layer="..interfaces.IDiscussionLayer"
/>
<!-- Resource directory for stylesheets -->
<browser:resourceDirectory
name="plone.app.discussion.stylesheets"
directory="stylesheets"
layer="..interfaces.IDiscussionLayer"
/>
<!-- Control panel -->
<browser:page
name="discussion-settings"
for="Products.CMFPlone.interfaces.IPloneSiteRoot"
class=".controlpanel.DiscussionSettingsControlPanel"
permission="cmf.ManagePortal"
/>
</configure>