diff options
author | Erik Johnston <erikj@jki.re> | 2018-06-25 14:37:01 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-06-25 14:37:01 +0100 |
commit | 33fdcfa957e64ec43bd866d09e12811140f75dcf (patch) | |
tree | 15dc74b7c90fa61cd53dff05eb19676a7bd5d935 /synapse/rest/client/v2_alpha/account.py | |
parent | Remove all global reactor imports & pass it around explicitly (#3424) (diff) | |
parent | Add UserErasureWorkerStore to workers (diff) | |
download | synapse-33fdcfa957e64ec43bd866d09e12811140f75dcf.tar.xz |
Merge pull request #3441 from matrix-org/erikj/redo_erasure
Fix user erasure and re-enable
Diffstat (limited to 'synapse/rest/client/v2_alpha/account.py')
-rw-r--r-- | synapse/rest/client/v2_alpha/account.py | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/synapse/rest/client/v2_alpha/account.py b/synapse/rest/client/v2_alpha/account.py index e1281cfbb6..80dbc3c92e 100644 --- a/synapse/rest/client/v2_alpha/account.py +++ b/synapse/rest/client/v2_alpha/account.py @@ -1,6 +1,7 @@ # -*- coding: utf-8 -*- # Copyright 2015, 2016 OpenMarket Ltd # Copyright 2017 Vector Creations Ltd +# Copyright 2018 New Vector Ltd # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -15,6 +16,7 @@ # limitations under the License. import logging +from six.moves import http_client from twisted.internet import defer from synapse.api.auth import has_access_token @@ -186,13 +188,20 @@ class DeactivateAccountRestServlet(RestServlet): @defer.inlineCallbacks def on_POST(self, request): body = parse_json_object_from_request(request) + erase = body.get("erase", False) + if not isinstance(erase, bool): + raise SynapseError( + http_client.BAD_REQUEST, + "Param 'erase' must be a boolean, if given", + Codes.BAD_JSON, + ) requester = yield self.auth.get_user_by_req(request) # allow ASes to dectivate their own users if requester.app_service: yield self._deactivate_account_handler.deactivate_account( - requester.user.to_string() + requester.user.to_string(), erase, ) defer.returnValue((200, {})) @@ -200,7 +209,7 @@ class DeactivateAccountRestServlet(RestServlet): requester, body, self.hs.get_ip_from_request(request), ) yield self._deactivate_account_handler.deactivate_account( - requester.user.to_string(), + requester.user.to_string(), erase, ) defer.returnValue((200, {})) |