Clean up the user directory sample config section (#9385)

The user directory sample config section was a little messy, and didn't adhere to our [recommended config format guidelines](https://github.com/matrix-org/synapse/blob/develop/docs/code_style.md#configuration-file-format).

This PR cleans that up a bit.
This commit is contained in:
Andrew Morgan 2021-02-22 11:44:31 +00:00 committed by GitHub
parent fc8b3d8809
commit e22b71810e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 67 additions and 50 deletions

1
changelog.d/9385.feature Normal file
View File

@ -0,0 +1 @@
Add a configuration option, `user_directory.prefer_local_users`, which when enabled will make it more likely for users on the same server as you to appear above other users.

View File

@ -2544,24 +2544,35 @@ spam_checker:
# User Directory configuration # User Directory configuration
# #
# 'enabled' defines whether users can search the user directory. If user_directory:
# false then empty responses are returned to all queries. Defaults to # Defines whether users can search the user directory. If false then
# true. # empty responses are returned to all queries. Defaults to true.
# #
# 'search_all_users' defines whether to search all users visible to your HS # Uncomment to disable the user directory.
# when searching the user directory, rather than limiting to users visible #
# in public rooms. Defaults to false. If you set it True, you'll have to #enabled: false
# rebuild the user_directory search indexes, see
# https://github.com/matrix-org/synapse/blob/master/docs/user_directory.md # Defines whether to search all users visible to your HS when searching
# # the user directory, rather than limiting to users visible in public
# 'prefer_local_users' defines whether to prioritise local users in # rooms. Defaults to false.
# search query results. If True, local users are more likely to appear above #
# remote users when searching the user directory. Defaults to false. # If you set it true, you'll have to rebuild the user_directory search
# # indexes, see:
#user_directory: # https://github.com/matrix-org/synapse/blob/master/docs/user_directory.md
# enabled: true #
# search_all_users: false # Uncomment to return search results containing all known users, even if that
# prefer_local_users: false # user does not share a room with the requester.
#
#search_all_users: true
# Defines whether to prefer local users in search query results.
# If True, local users are more likely to appear above remote users
# when searching the user directory. Defaults to false.
#
# Uncomment to prefer local over remote users in user directory search
# results.
#
#prefer_local_users: true
# User Consent configuration # User Consent configuration

View File

@ -24,41 +24,46 @@ class UserDirectoryConfig(Config):
section = "userdirectory" section = "userdirectory"
def read_config(self, config, **kwargs): def read_config(self, config, **kwargs):
self.user_directory_search_enabled = True user_directory_config = config.get("user_directory") or {}
self.user_directory_search_all_users = False self.user_directory_search_enabled = user_directory_config.get("enabled", True)
self.user_directory_search_prefer_local_users = False self.user_directory_search_all_users = user_directory_config.get(
user_directory_config = config.get("user_directory", None) "search_all_users", False
if user_directory_config: )
self.user_directory_search_enabled = user_directory_config.get( self.user_directory_search_prefer_local_users = user_directory_config.get(
"enabled", True "prefer_local_users", False
) )
self.user_directory_search_all_users = user_directory_config.get(
"search_all_users", False
)
self.user_directory_search_prefer_local_users = user_directory_config.get(
"prefer_local_users", False
)
def generate_config_section(self, config_dir_path, server_name, **kwargs): def generate_config_section(self, config_dir_path, server_name, **kwargs):
return """ return """
# User Directory configuration # User Directory configuration
# #
# 'enabled' defines whether users can search the user directory. If user_directory:
# false then empty responses are returned to all queries. Defaults to # Defines whether users can search the user directory. If false then
# true. # empty responses are returned to all queries. Defaults to true.
# #
# 'search_all_users' defines whether to search all users visible to your HS # Uncomment to disable the user directory.
# when searching the user directory, rather than limiting to users visible #
# in public rooms. Defaults to false. If you set it True, you'll have to #enabled: false
# rebuild the user_directory search indexes, see
# https://github.com/matrix-org/synapse/blob/master/docs/user_directory.md # Defines whether to search all users visible to your HS when searching
# # the user directory, rather than limiting to users visible in public
# 'prefer_local_users' defines whether to prioritise local users in # rooms. Defaults to false.
# search query results. If True, local users are more likely to appear above #
# remote users when searching the user directory. Defaults to false. # If you set it true, you'll have to rebuild the user_directory search
# # indexes, see:
#user_directory: # https://github.com/matrix-org/synapse/blob/master/docs/user_directory.md
# enabled: true #
# search_all_users: false # Uncomment to return search results containing all known users, even if that
# prefer_local_users: false # user does not share a room with the requester.
#
#search_all_users: true
# Defines whether to prefer local users in search query results.
# If True, local users are more likely to appear above remote users
# when searching the user directory. Defaults to false.
#
# Uncomment to prefer local over remote users in user directory search
# results.
#
#prefer_local_users: true
""" """