Revision 49790d9d snf-astakos-app/astakos/im/functions.py
b/snf-astakos-app/astakos/im/functions.py | ||
---|---|---|
39 | 39 |
from django.core.mail import send_mail |
40 | 40 |
from django.core.urlresolvers import reverse |
41 | 41 |
from django.core.exceptions import ValidationError |
42 |
from django.template import Context, loader |
|
42 | 43 |
|
43 | 44 |
from urllib import quote |
44 | 45 |
from urlparse import urljoin |
... | ... | |
156 | 157 |
else: |
157 | 158 |
logger.info('Sent feedback from %s', user.email) |
158 | 159 |
|
160 |
def send_change_email(ec, request, email_template_name='registration/email_change_email.txt'): |
|
161 |
try: |
|
162 |
url = reverse('email_change_confirm', |
|
163 |
kwargs={'activation_key':ec.activation_key}) |
|
164 |
url = request.build_absolute_uri(url) |
|
165 |
t = loader.get_template(email_template_name) |
|
166 |
c = {'url': url, 'site_name': SITENAME} |
|
167 |
from_email = DEFAULT_FROM_EMAIL |
|
168 |
send_mail(_("Email change on %s alpha2 testing") % SITENAME, |
|
169 |
t.render(Context(c)), from_email, [ec.new_email_address]) |
|
170 |
except (SMTPException, socket.error) as e: |
|
171 |
logger.exception(e) |
|
172 |
raise ChangeEmailError() |
|
173 |
else: |
|
174 |
logger.info('Sent change email for %s', ec.user.email) |
|
175 |
|
|
159 | 176 |
def activate(user, email_template_name='im/welcome_email.txt'): |
160 | 177 |
""" |
161 | 178 |
Activates the specific user and sends email. |
... | ... | |
214 | 231 |
class SendFeedbackError(SendMailError): |
215 | 232 |
def __init__(self): |
216 | 233 |
self.message = _('Failed to send feedback') |
217 |
super(SendFeedbackError, self).__init__() |
|
234 |
super(SendFeedbackError, self).__init__() |
|
235 |
|
|
236 |
class ChangeEmailError(SendMailError): |
|
237 |
def __init__(self): |
|
238 |
self.message = _('Failed to send change email') |
|
239 |
super(ChangeEmailError, self).__init__() |
Also available in: Unified diff