Skip to content

Commit ef157fd

Browse files
author
Steve Ivy
committed
Add send activation email so that it sends html mail. this is so that the html backend doesn't override the invitation code.
1 parent 7a5a871 commit ef157fd

File tree

1 file changed

+20
-2
lines changed

1 file changed

+20
-2
lines changed

invitation/models.py

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
from django.db import models
22
from django.utils.translation import ugettext_lazy as _
33
from django.contrib.auth.models import User
4-
import random
5-
import string
4+
from django.conf import settings
65

76

87
class InvitationCode(models.Model):
@@ -15,3 +14,22 @@ class InvitationCode(models.Model):
1514
used_date = models.DateTimeField(blank=True, null=True, auto_now_add=True,
1615
verbose_name=_(u"Used on"))
1716

17+
def send_activation_email(self, site):
18+
"""Send the activation mail"""
19+
from django.core.mail import EmailMultiAlternatives
20+
from django.template.loader import render_to_string
21+
22+
ctx_dict = {'activation_key': self.activation_key,
23+
'expiration_days': settings.ACCOUNT_ACTIVATION_DAYS,
24+
'site': site}
25+
subject = render_to_string('registration/activation_email_subject.txt',
26+
ctx_dict)
27+
# Email subject *must not* contain newlines
28+
subject = ''.join(subject.splitlines())
29+
30+
message_text = render_to_string('registration/activation_email.txt', ctx_dict)
31+
message_html = render_to_string('registration/activation_email.html', ctx_dict)
32+
33+
msg = EmailMultiAlternatives(subject, message_text, settings.DEFAULT_FROM_EMAIL, [self.user.email])
34+
msg.attach_alternative(message_html, "text/html")
35+
msg.send()

0 commit comments

Comments
 (0)