X-Git-Url: https://scm.cri.ensmp.fr/git/Plinn.git/blobdiff_plain/40acf3027cd594e48486729285eb7a34379078f9..b3b52f5b0ad754fd9036f816d0ab8e98a5373f40:/profiles/photo/workflows/order_workflow/scripts/sendNotificationEmail.py diff --git a/profiles/photo/workflows/order_workflow/scripts/sendNotificationEmail.py b/profiles/photo/workflows/order_workflow/scripts/sendNotificationEmail.py new file mode 100755 index 0000000..26ba76b --- /dev/null +++ b/profiles/photo/workflows/order_workflow/scripts/sendNotificationEmail.py @@ -0,0 +1,72 @@ +## Script (Python) "sendNotificationEmail" +##bind container=container +##bind context=context +##bind namespace= +##bind script=script +##bind subpath=traverse_subpath +##parameters=sci +##title= +## +from Products.photoprint.utils import translate +_ = lambda msg : translate(msg, context) +portal = context.portal_url.getPortalObject() + +mtool = portal.portal_membership + +recipients = sci.kwargs.get('recipients', []) +if not recipients : + return [] + + +MailHost = portal.MailHost +from quopri import encodestring + +def encodeAdr(member) : + name = member.getMemberFullName(nameBefore=0) + email = member.getProperty('email') + qpName = encodestring(name).replace('=\n', '') + return '''"=?utf-8?q?%s?=" <%s>''' % (qpName, email) + + +object = sci.object + +sender = mtool.getAuthenticatedMember() +sender = encodeAdr(sender) + +recipientsFormated = map(encodeAdr, mtool.getMembers( recipients )) +mto = ', '.join(recipientsFormated) +if mto[-2:] == ', ' : + mto = mto[:-2] + +subject = sci.kwargs.get('subject', '') + +body = [] +pr = body.append +pr(sci.kwargs.get('comment', '')) + +pr('') + +trNumber = sci.kwargs.get('tracking_number', '') +if trNumber : + pr(_('Tracking number').encode('utf-8') + ' ' + trNumber) + +trUrl = sci.kwargs.get('tracking_url', '') +if trUrl : + pr(_('Tracking url').encode('utf-8') + ' ' + trUrl) + +body = '\n'.join(body) + + + +message = context.echange_mail_template( From = sender + , To = mto + , Subject = "=?utf-8?q?%s?=" % encodestring(subject).replace('=\n', '') + , ContentType = 'text/plain' + , charset = 'UTF-8' + , body=body + ) + + +MailHost.send( message.encode('utf-8') ) + +return recipients