diff options
author | Dirk Klimpel <5740567+dklimpel@users.noreply.github.com> | 2020-02-07 11:29:36 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-07 10:29:36 +0000 |
commit | 56ca93ef5941b5dfcda368f373a6bcd80d177acd (patch) | |
tree | 4c153a2fce717773aefcb9010cd3ec3d8fb1b99f /synapse/handlers | |
parent | remove unused room_version_to_event_format (#6857) (diff) | |
download | synapse-56ca93ef5941b5dfcda368f373a6bcd80d177acd.tar.xz |
Admin api to add an email address (#6789)
Diffstat (limited to 'synapse/handlers')
-rw-r--r-- | synapse/handlers/admin.py | 2 | ||||
-rw-r--r-- | synapse/handlers/auth.py | 8 |
2 files changed, 10 insertions, 0 deletions
diff --git a/synapse/handlers/admin.py b/synapse/handlers/admin.py index 9205865231..f3c0aeceb6 100644 --- a/synapse/handlers/admin.py +++ b/synapse/handlers/admin.py @@ -58,8 +58,10 @@ class AdminHandler(BaseHandler): ret = await self.store.get_user_by_id(user.to_string()) if ret: profile = await self.store.get_profileinfo(user.localpart) + threepids = await self.store.user_get_threepids(user.to_string()) ret["displayname"] = profile.display_name ret["avatar_url"] = profile.avatar_url + ret["threepids"] = threepids return ret async def export_user_data(self, user_id, writer): diff --git a/synapse/handlers/auth.py b/synapse/handlers/auth.py index 54a71c49d2..48a88d3c2a 100644 --- a/synapse/handlers/auth.py +++ b/synapse/handlers/auth.py @@ -816,6 +816,14 @@ class AuthHandler(BaseHandler): @defer.inlineCallbacks def add_threepid(self, user_id, medium, address, validated_at): + # check if medium has a valid value + if medium not in ["email", "msisdn"]: + raise SynapseError( + code=400, + msg=("'%s' is not a valid value for 'medium'" % (medium,)), + errcode=Codes.INVALID_PARAM, + ) + # 'Canonicalise' email addresses down to lower case. # We've now moving towards the homeserver being the entity that # is responsible for validating threepids used for resetting passwords |