From ae5bb32ad0d50b90c5d3833e132dc4ba58a4eb86 Mon Sep 17 00:00:00 2001 From: Matthew Hodgson Date: Sun, 4 Nov 2018 23:46:11 +0000 Subject: add im.vector.hide_profile to user account_data --- synapse/handlers/profile.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) (limited to 'synapse/handlers/profile.py') diff --git a/synapse/handlers/profile.py b/synapse/handlers/profile.py index 65e29518f0..58e9181f01 100644 --- a/synapse/handlers/profile.py +++ b/synapse/handlers/profile.py @@ -270,10 +270,13 @@ class BaseProfileHandler(BaseHandler): run_in_background(self._replicate_profiles) @defer.inlineCallbacks - def set_active(self, target_user, active): + def set_active(self, target_user, active, hide): """ Sets the 'active' flag on a user profile. If set to false, the user account is - considered deactivated. + considered deactivated or hidden. + If 'hide' is true, then we just try hide the user rather than deactivate it. + This means withholding it from replication (and mark it as inactive) rather than + clearing the profile from the HS DB. Note that unlike set_displayname and set_avatar_url, this does *not* perform authorization checks! This is because the only place it's used currently is in account deactivation where we've already done these checks anyway. @@ -284,7 +287,7 @@ class BaseProfileHandler(BaseHandler): else: new_batchnum = None yield self.store.set_profile_active( - target_user.localpart, active, new_batchnum + target_user.localpart, active, hide, new_batchnum ) # start a profile replication push -- cgit 1.5.1