summary refs log tree commit diff
path: root/synapse/handlers/login.py
diff options
context:
space:
mode:
authorKegan Dougal <kegan@matrix.org>2014-09-16 12:36:39 +0100
committerKegan Dougal <kegan@matrix.org>2014-09-16 12:36:39 +0100
commitcc83b06cd19f8fc52f86700c1663185a2b1a7cac (patch)
tree9f6d8c2dcae8057e52a3870ea2ada8be728a43b5 /synapse/handlers/login.py
parentAdded PasswordResetRestServlet. Hit the IS to confirm the email/user. Need to... (diff)
downloadsynapse-cc83b06cd19f8fc52f86700c1663185a2b1a7cac.tar.xz
Added support for the HS to send emails. Use it to send password resets. Added email_smtp_server and email_from_address config args. Added emailutils.
Diffstat (limited to 'synapse/handlers/login.py')
-rw-r--r--synapse/handlers/login.py14
1 files changed, 14 insertions, 0 deletions
diff --git a/synapse/handlers/login.py b/synapse/handlers/login.py

index 101b9a81ad..80ffdd2726 100644 --- a/synapse/handlers/login.py +++ b/synapse/handlers/login.py
@@ -18,6 +18,8 @@ from twisted.internet import defer from ._base import BaseHandler from synapse.api.errors import LoginError, Codes from synapse.http.client import PlainHttpClient +from synapse.util.emailutils import EmailException +import synapse.util.emailutils as emailutils import bcrypt import logging @@ -71,6 +73,18 @@ class LoginHandler(BaseHandler): is_valid = yield self._check_valid_association(user_id, email) logger.info("reset_password user=%s email=%s valid=%s", user_id, email, is_valid) + if is_valid: + try: + # send an email out + emailutils.send_email( + smtp_server=self.hs.config.email_smtp_server, + from_addr=self.hs.config.email_from_address, + to_addr=email, + subject="Password Reset", + body="TODO." + ) + except EmailException as e: + logger.exception(e) @defer.inlineCallbacks def _check_valid_association(self, user_id, email):