From e03a36302475e75ac2e8688a9a0e8fd7d593f2f4 Mon Sep 17 00:00:00 2001 From: Antoine Nguyen Date: Wed, 27 Jun 2012 21:44:08 +0200 Subject: [PATCH] Let's try to send valid e-mails :p see #283 --- modoboa/admin/models.py | 7 +++++++ .../management/commands/autoreply.py | 15 +++------------ modoboa/extensions/webmail/lib.py | 2 -- modoboa/lib/emailutils.py | 2 +- 4 files changed, 11 insertions(+), 15 deletions(-) diff --git a/modoboa/admin/models.py b/modoboa/admin/models.py index 5bc96858e..d2f81dff8 100644 --- a/modoboa/admin/models.py +++ b/modoboa/admin/models.py @@ -512,6 +512,13 @@ class Mailbox(DatesAware): def full_address(self): return "%s@%s" % (self.address, self.domain.name) + @property + def name_and_address(self): + if self.user.first_name != "" or self.user.last_name != "": + return "%s %s <%s>" % \ + (self.user.first_name, request.user.last_name, self.full_address) + return self.full_address + @property def enabled(self): return self.user.is_active diff --git a/modoboa/extensions/postfix_autoreply/management/commands/autoreply.py b/modoboa/extensions/postfix_autoreply/management/commands/autoreply.py index ae99e558c..a0227f96f 100644 --- a/modoboa/extensions/postfix_autoreply/management/commands/autoreply.py +++ b/modoboa/extensions/postfix_autoreply/management/commands/autoreply.py @@ -2,12 +2,10 @@ # coding: utf-8 import sys -import smtplib -from email.mime.text import MIMEText import datetime from django.core.management.base import BaseCommand, CommandError from modoboa.lib import parameters -from modoboa.lib.emailutils import split_mailbox +from modoboa.lib.emailutils import split_mailbox, sendmail_simple from modoboa.admin.models import Mailbox from modoboa.extensions.postfix_autoreply import PostfixAutoreply from modoboa.extensions.postfix_autoreply.models import ARmessage, ARhistoric @@ -32,15 +30,8 @@ def send_autoreply(sender, mailbox, armessage): lastar.armessage = armessage lastar.sender = sender - msg = MIMEText(armessage.content.encode('utf-8'), _charset='utf-8') - msg['Subject'] = armessage.subject - msg['From'] = mailbox.full_address - msg['To'] = sender - - s = smtplib.SMTP() - s.connect() - s.sendmail(mailbox.full_address, sender, msg.as_string()) - s.quit() + sendmail_simple(mailbox.name_and_address, sender, armessage.subject, + armessage.content.encode('utf-8')) lastar.last_sent = datetime.datetime.now() lastar.save() diff --git a/modoboa/extensions/webmail/lib.py b/modoboa/extensions/webmail/lib.py index 7d24d6808..2079474d1 100644 --- a/modoboa/extensions/webmail/lib.py +++ b/modoboa/extensions/webmail/lib.py @@ -601,8 +601,6 @@ def send_mail(request, posturl=None): body = request.POST["id_body"] charset = "utf-8" - print body - if editormode == "html": msg = MIMEMultipart(_subtype="related") submsg = MIMEMultipart(_subtype="alternative") diff --git a/modoboa/lib/emailutils.py b/modoboa/lib/emailutils.py index 75b97695a..5a1d9747d 100644 --- a/modoboa/lib/emailutils.py +++ b/modoboa/lib/emailutils.py @@ -249,7 +249,7 @@ def sendmail_simple(sender, rcpt, subject="Sample message", content="", **kwargs :param content: message's content :return: tuple """ - msg = MIMEText(content) + msg = MIMEText(content, charset='utf-8') msg["Subject"] = subject msg["From"] = sender msg["To"] = rcpt