Example #1
0
def newMessageNotify(object, event):
    """ Notifies the appropriate User if he received a new message
    """
    if IReceivedMessageFolder.providedBy(aq_parent(object)):
        try:
            mailhost = getToolByName(object, 'MailHost')
            mship = getToolByName(object, 'portal_membership')
            sender = object.getSender()
            receiver = object.getReceiver()
            portal = getSiteManager(object)
            body = object.new_message_notification(name=mship.getMemberInfo(receiver).get('fullname', object.getReceiver()),
                                                   sender=mship.getMemberInfo(sender).get('fullname', object.getSender()),
                                                   site=portal.getProperty('title', ''),
                                                   siteurl=getToolByName(object, 'portal_url')(),
                                                   url=object.absolute_url(),
                                                   emailfrom=portal.getProperty('email_from_name', ''),
                                                   message=object)
            mailhost.secureSend(body,
                                mto=mship.getMemberById(receiver).getProperty('email'),
                                mfrom='%s <%s>' % (portal.getProperty('email_from_name', ''), portal.getProperty('email_from_address', '')),
                                subject=translate(_(u'mail_subject', default=u'You have received a new message'), context=object.REQUEST),
                                charset='utf-8')
        except:
            # no mailserver
            pass
Example #2
0
 def received(self):
     return IReceivedMessageFolder.providedBy(self.context)