summary refs log tree commit diff
path: root/synapse
diff options
context:
space:
mode:
authorBrendan Abolivier <babolivier@matrix.org>2019-09-27 15:21:03 +0100
committerBrendan Abolivier <babolivier@matrix.org>2019-09-27 16:57:19 +0100
commitacf6b2388e9b5d1a03b53d4c3078f550caf75d8b (patch)
tree6837909a52233c80bd0097a8d417fc5f0c47dae8 /synapse
parentMerge pull request #5 from matrix-org/babolivier/get-retention-worker (diff)
downloadsynapse-acf6b2388e9b5d1a03b53d4c3078f550caf75d8b.tar.xz
Lint
Diffstat (limited to 'synapse')
-rw-r--r--synapse/handlers/deactivate_account.py35
1 files changed, 34 insertions, 1 deletions
diff --git a/synapse/handlers/deactivate_account.py b/synapse/handlers/deactivate_account.py

index b8cf6ab57c..432fed1d04 100644 --- a/synapse/handlers/deactivate_account.py +++ b/synapse/handlers/deactivate_account.py
@@ -128,7 +128,40 @@ class DeactivateAccountHandler(BaseHandler): # Mark the user as deactivated. yield self.store.set_user_deactivated_status(user_id, True) - defer.returnValue(identity_server_supports_unbinding) + return identity_server_supports_unbinding + + @defer.inlineCallbacks + def _reject_pending_invites_for_user(self, user_id): + """Reject pending invites addressed to a given user ID. + + Args: + user_id (str): The user ID to reject pending invites for. + """ + user = UserID.from_string(user_id) + pending_invites = yield self.store.get_invited_rooms_for_user(user_id) + + logger.info(pending_invites) + + for room in pending_invites: + try: + yield self._room_member_handler.update_membership( + create_requester(user), + user, + room.room_id, + "leave", + ratelimit=False, + require_consent=False, + ) + logger.info( + "Rejected invite for user %r in room %r", user_id, room.room_id + ) + except Exception: + logger.exception( + "Failed to reject invite for user %r in room %r:" + " ignoring and continuing", + user_id, + room.room_id, + ) def _start_user_parting(self): """