[dev] added event for comment delete, comment publication + notify for events

This commit is contained in:
Filippo Campi
2018-09-27 11:26:41 +02:00
parent 3648c3345f
commit 36f0e03805
4 changed files with 53 additions and 0 deletions
@@ -3,6 +3,8 @@ from AccessControl import getSecurityManager
from AccessControl import Unauthorized
from Acquisition import aq_inner
from Acquisition import aq_parent
from plone.app.discussion.events import NotifyOnPublish
from plone.app.discussion.events import NotifyOnDelete
from plone.app.discussion.interfaces import _
from plone.app.discussion.interfaces import IComment
from plone.app.discussion.interfaces import IReplies
@@ -10,6 +12,7 @@ from Products.CMFCore.utils import getToolByName
from Products.Five.browser import BrowserView
from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile
from Products.statusmessages.interfaces import IStatusMessage
from zope.event import notify
class View(BrowserView):
@@ -100,6 +103,7 @@ class DeleteComment(BrowserView):
if self.can_delete(comment):
del conversation[comment.id]
content_object.reindexObject()
notify(NotifyOnDelete(self.context, comment))
IStatusMessage(self.context.REQUEST).addStatusMessage(
_('Comment deleted.'),
type='info')
@@ -183,6 +187,7 @@ class PublishComment(BrowserView):
workflowTool.doActionFor(comment, workflow_action)
comment.reindexObject()
content_object.reindexObject(idxs=['total_comments'])
notify(NotifyOnPublish(self.context, comment))
IStatusMessage(self.context.REQUEST).addStatusMessage(
_('Comment approved.'),
type='info')
@@ -258,6 +263,7 @@ class BulkActionsView(BrowserView):
workflowTool.doActionFor(comment, 'publish')
comment.reindexObject()
content_object.reindexObject(idxs=['total_comments'])
notify(NotifyOnPublish(content_object, comment))
def mark_as_spam(self):
raise NotImplementedError
@@ -277,3 +283,4 @@ class BulkActionsView(BrowserView):
content_object = aq_parent(conversation)
del conversation[comment.id]
content_object.reindexObject(idxs=['total_comments'])
notify(NotifyOnDelete(content_object, comment))