mark accounts as erased when requested

This commit is contained in:
Richard van der Hoff 2018-06-12 09:43:59 +01:00
parent 3ff8a619f5
commit f1023ebf4b
3 changed files with 20 additions and 4 deletions

View file

@ -42,7 +42,7 @@ class DeactivateAccountHandler(BaseHandler):
reactor.callWhenRunning(self._start_user_parting)
@defer.inlineCallbacks
def deactivate_account(self, user_id):
def deactivate_account(self, user_id, erase_data):
"""Deactivate a user's account
Args:
@ -92,6 +92,11 @@ class DeactivateAccountHandler(BaseHandler):
# delete from user directory
yield self.user_directory_handler.handle_user_deactivated(user_id)
# Mark the user as erased, if they asked for that
if erase_data:
logger.info("Marking %s as erased", user_id)
yield self.store.mark_user_erased(user_id)
# Now start the process that goes through that list and
# parts users from rooms (if it isn't already running)
self._start_user_parting()