From dc0852f54fc9a635a2df8d0b847024d2b19608ca Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Sun, 13 Dec 2015 18:20:16 +0100 Subject: [PATCH] Made event an optional parameter of mail_send --- src/pretix/base/services/mail.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/pretix/base/services/mail.py b/src/pretix/base/services/mail.py index d485af5e3d..879c8c4af8 100644 --- a/src/pretix/base/services/mail.py +++ b/src/pretix/base/services/mail.py @@ -1,7 +1,7 @@ import logging from django.conf import settings -from django.core.mail import EmailMessage +from django.core.mail import EmailMessage, get_connection from django.template.loader import get_template from django.utils import translation from django.utils.translation import ugettext as _ @@ -65,15 +65,18 @@ def mail(email: str, subject: str, template: str, ) body += "\r\n" try: - return mail_send([email], subject, body, sender, event.id) + return mail_send([email], subject, body, sender, event.id if event else None) finally: translation.activate(_lng) -def mail_send(to: str, subject: str, body: str, sender: str, event: int) -> bool: +def mail_send(to: str, subject: str, body: str, sender: str, event: int=None) -> bool: email = EmailMessage(subject, body, sender, to=to) - event = Event.objects.get(id=event) - backend = event.get_mail_backend() + if event: + event = Event.objects.get(id=event) + backend = event.get_mail_backend() + else: + backend = get_connection(fail_silently=False) try: backend.send_messages([email])