From 83ec07fd18a525ab79bed3e217df2568c21fd39f Mon Sep 17 00:00:00 2001 From: Erich Hasl Date: Sun, 16 Jun 2019 14:43:09 +0200 Subject: [PATCH] remove workaround, fix message ids --- jdav_web/mailer/management/commands/reply_addrs.py | 13 +++++++------ jdav_web/mailer/models.py | 8 ++------ 2 files changed, 9 insertions(+), 12 deletions(-) diff --git a/jdav_web/mailer/management/commands/reply_addrs.py b/jdav_web/mailer/management/commands/reply_addrs.py index b0302a6..bd2b664 100644 --- a/jdav_web/mailer/management/commands/reply_addrs.py +++ b/jdav_web/mailer/management/commands/reply_addrs.py @@ -6,24 +6,25 @@ import subprocess class Command(BaseCommand): help = 'Shows reply-to addresses' + requires_system_checks = False def add_arguments(self, parser): - parser.add_argument('message_id', type=int) + parser.add_argument('message_id', nargs='?', default="-1") def handle(self, *args, **options): replies = [] try: - message = Message.objects.get(pk=options['message_id']) + message_id = int(options['message_id']) + message = Message.objects.get(pk=message_id) if message.reply_to: replies = message.reply_to.all() - except Message.DoesNotExist: + except (Message.DoesNotExist, ValueError): pass if not replies: # send mail to all jugendleiters - replies = Member.objects.filter(group__name='Jugendleiter0', + replies = Member.objects.filter(group__name='Jugendleiter', gets_newsletter=True) forwards = [l.email for l in replies] - subprocess.call(["forward"] + forwards) - self.stdout.write("forwarded email to {}".format(forwards)) + self.stdout.write(" ".join(forwards)) diff --git a/jdav_web/mailer/models.py b/jdav_web/mailer/models.py index c91cfc1..94ea1b2 100644 --- a/jdav_web/mailer/models.py +++ b/jdav_web/mailer/models.py @@ -72,16 +72,12 @@ class Message(models.Model): # remove any underscores from subject to prevent Arne from using # terrible looking underscores in subjects self.subject = self.subject.replace('_', ' ') - if len(self.reply_to.all()) > 0: - temporary_reply_to = [r.email for r in self.reply_to.all()] - else: - temporary_reply_to = None + message_id = "<{}@jdav-ludwigsburg.de>".format(self.pk) try: success = send(self.subject, get_content(self.content), SENDING_ADDRESS, emails, - reply_to=temporary_reply_to, - message_id=self.pk, + message_id=message_id, attachments=attach) if success == SENT or success == PARTLY_SENT: self.sent = True