From e03c969bed2bcaf4f66f706e80a41a340298ac38 Mon Sep 17 00:00:00 2001 From: Magnus Hagander Date: Mon, 9 Feb 2015 11:30:56 +0100 Subject: Set sender and recipient name on outgoing emails Instead of just using bare headers. Hopefully this will lower some spamscores, and more importantly make things actually look better to receipients. In passing, fix ability to use unicode characters in subjects. --- postgresqleu/mailqueue/util.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'postgresqleu/mailqueue/util.py') diff --git a/postgresqleu/mailqueue/util.py b/postgresqleu/mailqueue/util.py index dc09af6f..2f616b66 100644 --- a/postgresqleu/mailqueue/util.py +++ b/postgresqleu/mailqueue/util.py @@ -6,15 +6,21 @@ from email import encoders from models import QueuedMail -def send_simple_mail(sender, receiver, subject, msgtxt, attachments=None, bcc=None): +def send_simple_mail(sender, receiver, subject, msgtxt, attachments=None, bcc=None, sendername=None, receivername=None): # attachment format, each is a tuple of (name, mimetype,contents) # content should be *binary* and not base64 encoded, since we need to # use the base64 routines from the email library to get a properly # formatted output message msg = MIMEMultipart() msg['Subject'] = subject - msg['To'] = receiver - msg['From'] = sender + if receivername: + msg['To'] = u'{0} <{1}>'.format(receivername, receiver) + else: + msg['To'] = receiver + if sendername: + msg['From'] = u'{0} <{1}>'.format(sendername, sender) + else: + msg['From'] = sender msg['Date'] = formatdate(localtime=True) msg.attach(MIMEText(msgtxt, _charset='utf-8')) -- cgit v1.2.3