From c996289563ca8ecbb6a8cf4068c4a85763803e67 Mon Sep 17 00:00:00 2001 From: Johan von Forstner Date: Sun, 27 May 2018 12:39:59 +0200 Subject: [PATCH] fix default answers for booleans --- src/pretix/base/models/items.py | 6 +++--- src/pretix/static/pretixcontrol/js/ui/main.js | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/pretix/base/models/items.py b/src/pretix/base/models/items.py index 29582b4649..1bb6eb9f2a 100644 --- a/src/pretix/base/models/items.py +++ b/src/pretix/base/models/items.py @@ -987,7 +987,7 @@ class Question(LoggedModel): def clean(self): if self.default_value is not None: - self.clean_answer(self.default_value) + self.clean_answer(self.default_value, check_required=False) @staticmethod def _clean_identifier(event, code, instance=None): @@ -1016,8 +1016,8 @@ class Question(LoggedModel): def __lt__(self, other) -> bool: return self.sortkey < other.sortkey - def clean_answer(self, answer): - if self.required: + def clean_answer(self, answer, check_required=True): + if self.required and check_required: if not answer or (self.type == Question.TYPE_BOOLEAN and answer not in ("true", "True", True)): raise ValidationError(_('An answer to this question is required to proceed.')) if not answer: diff --git a/src/pretix/static/pretixcontrol/js/ui/main.js b/src/pretix/static/pretixcontrol/js/ui/main.js index a6d44e9079..cc0c0fdc3d 100644 --- a/src/pretix/static/pretixcontrol/js/ui/main.js +++ b/src/pretix/static/pretixcontrol/js/ui/main.js @@ -24,7 +24,7 @@ function question_page_toggle_view() { $('.form-group:has(#id_default_value)').show(); break; case 'B': - let checked = (value === 'True' ? 'checked' : ''); + let checked = (value === 'True' || value === 'on' ? 'checked' : ''); input.replaceWith(''); $('.form-group:has(#id_default_value)').show(); break;