diff --git a/app/groups/utils.py b/app/groups/utils.py index 6a816ed..f041f49 100644 --- a/app/groups/utils.py +++ b/app/groups/utils.py @@ -1,5 +1,5 @@ from django.conf import settings -from django.core.mail import EmailMultiAlternatives +from django.core.mail import EmailMultiAlternatives, get_connection from django.template.loader import get_template from django.template import Context from django.contrib.sites.models import Site @@ -9,7 +9,13 @@ def send_group_email(request, to_email, subject, email_text_template, email_html # Mail the admins to inform them of a new request ctx = Context({'request': request, 'domain': Site.objects.get_current().domain}) - msg = EmailMultiAlternatives(subject, get_template(email_text_template).render(ctx), getattr(settings, 'DEFAULT_FROM_EMAIL', 'auth@pleaseignore.com'), to_email) - msg.attach_alternative(get_template(email_html_template).render(ctx), 'text/html') - msg.send(fail_silently=True) + + messages = [generate_mail(ctx, email_text_template, email_html_template, to, subject) for to in to_email] + connection = get_connection(fail_silently=True) + connection.send_messages(messages) + +def generate_mail(context, email_text_template, email_html_template, to, subject): + msg = EmailMultiAlternatives(subject, get_template(email_text_template).render(context), getattr(settings, 'DEFAULT_FROM_EMAIL', 'auth@pleaseignore.com'), [to]) + msg.attach_alternative(get_template(email_html_template).render(context), 'text/html') + return msg