From 0c110ab1dcde1916c870a6d1796bbff31606dd62 Mon Sep 17 00:00:00 2001 From: ks129 <45097959+ks129@users.noreply.github.com> Date: Tue, 29 Dec 2020 19:27:18 +0200 Subject: Add check for REQUIRES_LOGIN when ASSIGN_ROLE provided --- backend/models/form.py | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'backend') diff --git a/backend/models/form.py b/backend/models/form.py index 5aacc8b..d95cabd 100644 --- a/backend/models/form.py +++ b/backend/models/form.py @@ -47,8 +47,12 @@ class Form(BaseModel): if any(v not in allowed_values for v in value): raise ValueError("Form features list contains one or more invalid values.") - if FormFeatures.COLLECT_EMAIL in value and FormFeatures.REQUIRES_LOGIN not in value: # noqa - raise ValueError("COLLECT_EMAIL feature require REQUIRES_LOGIN feature.") + if FormFeatures.REQUIRES_LOGIN not in value: + if FormFeatures.COLLECT_EMAIL in value: + raise ValueError("COLLECT_EMAIL feature require REQUIRES_LOGIN feature.") + + if FormFeatures.ASSIGN_ROLE in value: + raise ValueError("ASSIGN_ROLE feature require REQUIRES_LOGIN feature.") return value -- cgit v1.2.3