plone.app.discussion/plone/app/discussion/contentrules.zcml

314 lines
9.6 KiB
Plaintext
Raw Normal View History

<configure
xmlns="http://namespaces.zope.org/zope"
xmlns:zcml="http://namespaces.zope.org/zcml">
<configure zcml:condition="installed plone.contentrules">
<!-- Content Rules events -->
<interface
interface="plone.app.discussion.interfaces.ICommentAddedEvent"
type="plone.contentrules.rule.interfaces.IRuleEventType"
name="Comment added"
/>
<interface
interface="plone.app.discussion.interfaces.ICommentRemovedEvent"
type="plone.contentrules.rule.interfaces.IRuleEventType"
name="Comment removed"
/>
<interface
interface="plone.app.discussion.interfaces.IReplyAddedEvent"
type="plone.contentrules.rule.interfaces.IRuleEventType"
name="Comment reply added"
/>
<interface
interface="plone.app.discussion.interfaces.IReplyRemovedEvent"
type="plone.contentrules.rule.interfaces.IRuleEventType"
name="Comment reply removed"
/>
</configure>
<configure zcml:condition="installed plone.app.contentrules">
<!-- Content rules subscribers -->
<subscriber
for="plone.app.discussion.interfaces.ICommentAddedEvent"
handler=".contentrules.execute_comment"
/>
<subscriber
for="plone.app.discussion.interfaces.ICommentRemovedEvent"
handler=".contentrules.execute_comment"
/>
<subscriber
for="plone.app.discussion.interfaces.IReplyAddedEvent"
handler=".contentrules.execute_comment"
/>
<subscriber
for="plone.app.discussion.interfaces.IReplyRemovedEvent"
handler=".contentrules.execute_comment"
/>
<!-- Content rules string substitutions -->
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentUrlSubstitution"
name="absolute_url"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentUrlSubstitution"
name="url"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentParentUrlSubstitution"
name="parent_url"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentIdSubstitution"
name="id"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentTitleSubstitution"
name="title"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentParentTitleSubstitution"
name="parent_title"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentDescriptionSubstitution"
name="description"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentTypeSubstitution"
name="type"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentReviewStateSubstitution"
name="review_state"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentReviewStateTitleSubstitution"
name="review_state_title"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentCreatedSubstitution"
name="created"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentEffectiveSubstitution"
name="effective"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentExpiresSubstitution"
name="expires"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentModifiedSubstitution"
name="modified"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentCreatorsSubstitution"
name="creators"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentContributorsSubstitution"
name="contributors"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentSubjectSubstitution"
name="subject"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentSubjectSubstitution"
name="keywords"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentFormatSubstitution"
name="format"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentLanguageSubstitution"
name="language"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentRightsSubstitution"
name="rights"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentIdentifierSubstitution"
name="identifier"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentOwnerEmailSubstitution"
name="owner_emails"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentReviewerEmailSubstitution"
name="reviewer_emails"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentReaderEmailSubstitution"
name="reader_emails"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentEditorEmailSubstitution"
name="editor_emails"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentContributorEmailSubstitution"
name="contributor_emails"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentManagerEmailSubstitution"
name="manager_emails"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentMemberEmailSubstitution"
name="member_emails"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentUserEmailSubstitution"
name="user_email"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentUserFullNameSubstitution"
name="user_fullname"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentUserIdSubstitution"
name="user_id"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentLastChangeCommentSubstitution"
name="change_comment"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentLastChangeTitleSubstitution"
name="change_title"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentLastChangeTypeSubstitution"
name="change_type"
/>
<adapter
for="plone.app.discussion.interfaces.IComment"
provides="plone.stringinterp.interfaces.IStringSubstitution"
factory=".contentrules.CommentLastChangeActorIdSubstitution"
name="change_authorid"
/>
</configure>
</configure>