fix default answers for booleans

This commit is contained in:
Johan von Forstner
2019-03-27 18:42:42 +01:00
committed by johan12345
parent 89bbed42e6
commit c996289563
2 changed files with 4 additions and 4 deletions
+3 -3
View File
@@ -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:
@@ -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('<input type="checkbox" ' + common_attrs + ' ' + checked + '>');
$('.form-group:has(#id_default_value)').show();
break;