Send individual mails, to avoid showing the whole to list, BCC and spamholing from Google

This commit is contained in:
2011-09-30 13:50:20 +01:00
parent bf5119c5d6
commit dc47a72452

View File

@@ -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