613 |
613 |
|
614 |
614 |
def send_templated_mail(user_or_email, template_names, context=None, with_html=True,
|
615 |
615 |
from_email=None, request=None, legacy_subject_templates=None,
|
616 |
|
legacy_body_templates=None, legacy_html_body_templates=None, **kwargs):
|
|
616 |
legacy_body_templates=None, legacy_html_body_templates=None,
|
|
617 |
per_ou_templates=False, **kwargs):
|
617 |
618 |
'''Send mail to an user by using templates:
|
618 |
619 |
- <template_name>_subject.txt for the subject
|
619 |
620 |
- <template_name>_body.txt for the plain text body
|
... | ... | |
622 |
623 |
from .. import middleware
|
623 |
624 |
if isinstance(template_names, six.string_types):
|
624 |
625 |
template_names = [template_names]
|
|
626 |
if per_ou_templates and getattr(user_or_email, 'ou', None):
|
|
627 |
for i, template in enumerate(list(template_names)):
|
|
628 |
template_names.insert(i * 2, '_'.join((template, user_or_email.ou.slug)))
|
625 |
629 |
if hasattr(user_or_email, 'email'):
|
626 |
630 |
user_or_email = user_or_email.email
|
627 |
631 |
if not request:
|
... | ... | |
751 |
755 |
'deletion_url': deletion_url}
|
752 |
756 |
template_names = [
|
753 |
757 |
'authentic2/account_deletion_code']
|
754 |
|
if user.ou:
|
755 |
|
template_names.insert(0, 'authentic2/account_deletion_code_%s' % user.ou.slug)
|
756 |
|
send_templated_mail(user.email, template_names, context, request=request)
|
|
758 |
send_templated_mail(user, template_names, context, request=request, per_ou_templates=True)
|
757 |
759 |
logger.info(u'account deletion code sent to %s', user.email)
|
758 |
760 |
|
759 |
761 |
|
... | ... | |
769 |
771 |
'site': request.get_host()}
|
770 |
772 |
template_names = [
|
771 |
773 |
'authentic2/account_delete_notification']
|
772 |
|
if user.ou:
|
773 |
|
template_names.insert(0, 'authentic2/account_delete_notification_%s' % user.ou.slug)
|
774 |
|
send_templated_mail(user.email, template_names, context, request=request)
|
|
774 |
send_templated_mail(user, template_names, context, request=request, per_ou_templates=True)
|
775 |
775 |
logger.info(u'account deletion mail sent to %s', user.email)
|
776 |
776 |
|
777 |
777 |
|
... | ... | |
826 |
826 |
set_random_password=set_random_password,
|
827 |
827 |
sign_next_url=sign_next_url)
|
828 |
828 |
|
829 |
|
send_templated_mail(user.email, template_names, ctx, request=request,
|
|
829 |
send_templated_mail(user, template_names, ctx, request=request,
|
830 |
830 |
legacy_subject_templates=legacy_subject_templates,
|
831 |
|
legacy_body_templates=legacy_body_templates, **kwargs)
|
|
831 |
legacy_body_templates=legacy_body_templates,
|
|
832 |
per_ou_templates=True, **kwargs)
|
832 |
833 |
logger.info(u'password reset request for user %s, email sent to %s '
|
833 |
834 |
'with token %s', user, user.email, token[:9])
|
834 |
835 |
|
835 |
|
-
|