summary refs log tree commit diff
path: root/synapse/config/consent_config.py
diff options
context:
space:
mode:
authorTravis Ralston <travpc@gmail.com>2018-11-06 03:32:34 -0700
committerRichard van der Hoff <1389908+richvdh@users.noreply.github.com>2018-11-06 10:32:34 +0000
commit0f5e51f726756318f355d988856730a9930e2d2f (patch)
treef01b2b5e438f669497e24dad108b23cb4a81ba7c /synapse/config/consent_config.py
parenthandle empty backups according to latest spec proposal (#4123) (diff)
downloadsynapse-0f5e51f726756318f355d988856730a9930e2d2f.tar.xz
Add config variables for enabling terms auth and the policy name (#4142)
So people can still collect consent the old way if they want to.
Diffstat (limited to 'synapse/config/consent_config.py')
-rw-r--r--synapse/config/consent_config.py18
1 files changed, 18 insertions, 0 deletions
diff --git a/synapse/config/consent_config.py b/synapse/config/consent_config.py
index e22c731aad..f193a090ae 100644
--- a/synapse/config/consent_config.py
+++ b/synapse/config/consent_config.py
@@ -42,6 +42,14 @@ DEFAULT_CONFIG = """\
 # until the user consents to the privacy policy. The value of the setting is
 # used as the text of the error.
 #
+# 'require_at_registration', if enabled, will add a step to the registration
+# process, similar to how captcha works. Users will be required to accept the
+# policy before their account is created.
+#
+# 'policy_name' is the display name of the policy users will see when registering
+# for an account. Has no effect unless `require_at_registration` is enabled.
+# Defaults to "Privacy Policy".
+#
 # user_consent:
 #   template_dir: res/templates/privacy
 #   version: 1.0
@@ -54,6 +62,8 @@ DEFAULT_CONFIG = """\
 #   block_events_error: >-
 #     To continue using this homeserver you must review and agree to the
 #     terms and conditions at %(consent_uri)s
+#   require_at_registration: False
+#   policy_name: Privacy Policy
 #
 """
 
@@ -67,6 +77,8 @@ class ConsentConfig(Config):
         self.user_consent_server_notice_content = None
         self.user_consent_server_notice_to_guests = False
         self.block_events_without_consent_error = None
+        self.user_consent_at_registration = False
+        self.user_consent_policy_name = "Privacy Policy"
 
     def read_config(self, config):
         consent_config = config.get("user_consent")
@@ -83,6 +95,12 @@ class ConsentConfig(Config):
         self.user_consent_server_notice_to_guests = bool(consent_config.get(
             "send_server_notice_to_guests", False,
         ))
+        self.user_consent_at_registration = bool(consent_config.get(
+            "require_at_registration", False,
+        ))
+        self.user_consent_policy_name = consent_config.get(
+            "policy_name", "Privacy Policy",
+        )
 
     def default_config(self, **kwargs):
         return DEFAULT_CONFIG