diff options
author | Richard van der Hoff <1389908+richvdh@users.noreply.github.com> | 2018-05-22 11:56:09 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-05-22 11:56:09 +0100 |
commit | 8aeb529262ca686b149576f514958a62fb961af1 (patch) | |
tree | 794a25f36f274fa857a7bcd5b7c73a2b09723d09 /synapse/config/consent_config.py | |
parent | Merge pull request #3258 from matrix-org/erikj/fixup_logcontext_rusage (diff) | |
parent | Stub out ServerNoticesSender on the workers (diff) | |
download | synapse-8aeb529262ca686b149576f514958a62fb961af1.tar.xz |
Merge pull request #3236 from matrix-org/rav/consent_notice
Send users a server notice about consent
Diffstat (limited to 'synapse/config/consent_config.py')
-rw-r--r-- | synapse/config/consent_config.py | 34 |
1 files changed, 29 insertions, 5 deletions
diff --git a/synapse/config/consent_config.py b/synapse/config/consent_config.py index 675fce0911..8698b2993f 100644 --- a/synapse/config/consent_config.py +++ b/synapse/config/consent_config.py @@ -18,25 +18,49 @@ from ._base import Config DEFAULT_CONFIG = """\ # User Consent configuration # -# uncomment and configure if enabling the 'consent' resource under 'listeners'. +# Parts of this section are required if enabling the 'consent' resource under +# 'listeners', in particular 'template_dir' and 'version'. # # 'template_dir' gives the location of the templates for the HTML forms. # This directory should contain one subdirectory per language (eg, 'en', 'fr'), # and each language directory should contain the policy document (named as # '<version>.html') and a success page (success.html). # -# 'default_version' gives the version of the policy document to serve up if -# there is no 'v' parameter. +# 'version' specifies the 'current' version of the policy document. It defines +# the version to be served by the consent resource if there is no 'v' +# parameter. +# +# 'server_notice_content', if enabled, will send a user a "Server Notice" +# asking them to consent to the privacy policy. The 'server_notices' section +# must also be configured for this to work. # # user_consent: # template_dir: res/templates/privacy -# default_version: 1.0 +# version: 1.0 +# server_notice_content: +# msgtype: m.text +# body: | +# Pls do consent kthx """ class ConsentConfig(Config): + def __init__(self): + super(ConsentConfig, self).__init__() + + self.user_consent_version = None + self.user_consent_template_dir = None + self.user_consent_server_notice_content = None + def read_config(self, config): - self.consent_config = config.get("user_consent") + consent_config = config.get("user_consent") + if consent_config is None: + return + self.user_consent_version = str(consent_config["version"]) + self.user_consent_template_dir = consent_config["template_dir"] + self.user_consent_server_notice_content = consent_config.get( + "server_notice_content", + ) def default_config(self, **kwargs): return DEFAULT_CONFIG |