summary refs log tree commit diff
path: root/synapse/config/emailconfig.py
diff options
context:
space:
mode:
authorAndrew Morgan <andrew@amorgan.xyz>2021-04-21 15:34:28 +0100
committerAndrew Morgan <andrew@amorgan.xyz>2021-04-21 15:34:28 +0100
commit82b462401ff7f167bee098da9b9fa31cb4a50a69 (patch)
treeca288434a142ca90add2078d13a72a9157d7f192 /synapse/config/emailconfig.py
parentMerge commit '28877fade' into anoa/dinsic_release_1_31_0 (diff)
parentRefactor the CAS handler in prep for using the abstracted SSO code. (#8958) (diff)
downloadsynapse-82b462401ff7f167bee098da9b9fa31cb4a50a69.tar.xz
Merge commit '4218473f9' into anoa/dinsic_release_1_31_0
Diffstat (limited to 'synapse/config/emailconfig.py')
-rw-r--r--synapse/config/emailconfig.py22
1 files changed, 22 insertions, 0 deletions
diff --git a/synapse/config/emailconfig.py b/synapse/config/emailconfig.py

index 102b1c854e..d0b94c456b 100644 --- a/synapse/config/emailconfig.py +++ b/synapse/config/emailconfig.py
@@ -322,6 +322,22 @@ class EmailConfig(Config): self.email_subjects = EmailSubjectConfig(**subjects) + # The invite client location should be a HTTP(S) URL or None. + self.invite_client_location = email_config.get("invite_client_location") or None + if self.invite_client_location: + if not isinstance(self.invite_client_location, str): + raise ConfigError( + "Config option email.invite_client_location must be type str" + ) + if not ( + self.invite_client_location.startswith("http://") + or self.invite_client_location.startswith("https://") + ): + raise ConfigError( + "Config option email.invite_client_location must be a http or https URL", + path=("email", "invite_client_location"), + ) + def generate_config_section(self, config_dir_path, server_name, **kwargs): return ( """\ @@ -389,6 +405,12 @@ class EmailConfig(Config): # #validation_token_lifetime: 15m + # The web client location to direct users to during an invite. This is passed + # to the identity server as the org.matrix.web_client_location key. Defaults + # to unset, giving no guidance to the identity server. + # + #invite_client_location: https://app.element.io + # Directory in which Synapse will try to find the template files below. # If not set, or the files named below are not found within the template # directory, default templates from within the Synapse package will be used.