Fix scoping issue in mail_send_task

This commit is contained in:
Raphael Michel
2019-06-17 11:07:05 +02:00
parent d85ddb5bda
commit d716f7e014

View File

@@ -220,6 +220,17 @@ def mail_send_task(self, *args, to: List[str], subject: str, body: str, html: st
email = EmailMultiAlternatives(subject, body, sender, to=to, bcc=bcc, headers=headers) email = EmailMultiAlternatives(subject, body, sender, to=to, bcc=bcc, headers=headers)
if html is not None: if html is not None:
email.attach_alternative(html, "text/html") email.attach_alternative(html, "text/html")
if event:
with scopes_disabled():
event = Event.objects.get(id=event)
backend = event.get_mail_backend()
cm = lambda: scope(organizer=event.organizer) # noqa
else:
backend = get_connection(fail_silently=False)
cm = lambda: scopes_disabled() # noqa
with cm():
if invoices: if invoices:
invoices = Invoice.objects.filter(pk__in=invoices) invoices = Invoice.objects.filter(pk__in=invoices)
for inv in invoices: for inv in invoices:
@@ -233,17 +244,6 @@ def mail_send_task(self, *args, to: List[str], subject: str, body: str, html: st
except: except:
logger.exception('Could not attach invoice to email') logger.exception('Could not attach invoice to email')
pass pass
if event:
with scopes_disabled():
event = Event.objects.get(id=event)
backend = event.get_mail_backend()
cm = lambda: scope(organizer=event.organizer) # noqa
else:
backend = get_connection(fail_silently=False)
cm = lambda: scopes_disabled() # noqa
with cm():
if event: if event:
if order: if order:
try: try: