source: products/qPloneComments/branches/plone3_extend/skins/qplonecomments/discussion_publish_comment.py @ 864

Last change on this file since 864 was 331, checked in by piv, 18 years ago

debug mode set to false

  • Property svn:eol-style set to native
File size: 1.2 KB
Line 
1## Script (Python) "discussion_publish_comment"
2##bind container=container
3##bind context=context
4##bind namespace=
5##bind script=script
6##bind subpath=traverse_subpath
7##parameters=obj=None
8##title=
9##
10from Products.CMFPlone.utils import transaction_note
11from Products.CMFCore.utils import getToolByName
12from Products.qPloneComments.utils import publishDiscussion
13from Products.qPloneComments.utils import manage_mails
14from Products.CMFPlone import MessageFactory
15_ = MessageFactory('plonecomments')
16
17if obj is None:
18    obj = context
19
20parent = obj.inReplyTo()
21if parent is not None:
22    dtool = getToolByName(context, 'portal_discussion')
23    talkback = dtool.getDiscussionFor(parent)
24else:
25    talkback = parent = obj.aq_parent
26
27reply = talkback.getReply(obj.getId())
28publishDiscussion(reply)
29manage_mails(reply, context, action='publishing')
30
31putils = getToolByName(context, 'plone_utils')
32redirect_target = putils.getDiscussionThread(talkback)[0]
33view = redirect_target.getTypeInfo().getActionInfo('object/view')['url']
34anchor = reply.getId()
35
36transaction_note('Published discussion item')
37
38context.plone_utils.addPortalMessage(_(u'Comment published.'))
39target = '%s/%s#%s' % (redirect_target.absolute_url(), view, anchor)
40
41return context.REQUEST.RESPONSE.redirect(target)
Note: See TracBrowser for help on using the repository browser.