diff --git a/app/Http/Requests/AnswerFormRequest.php b/app/Http/Requests/AnswerFormRequest.php
index 73e6df6..9909eae 100644
--- a/app/Http/Requests/AnswerFormRequest.php
+++ b/app/Http/Requests/AnswerFormRequest.php
@@ -69,9 +69,12 @@ class AnswerFormRequest extends FormRequest
if (FormLogicPropertyResolver::isRequired($property, $data)) {
$rules[] = 'required';
- // Required for checkboxes means true
if ($property['type'] == 'checkbox') {
+ // Required for checkboxes means true
$rules[] = 'accepted';
+ } else if ($property['type'] == 'number' && isset($property['is_rating']) && $property['is_rating']) {
+ // For star rating, needs a minimum of 1 star
+ $rules[] = 'min:1';
}
} else {
$rules[] = 'nullable';
@@ -148,7 +151,7 @@ class AnswerFormRequest extends FormRequest
return ['string'];
case 'number':
if ($property['is_rating'] ?? false) {
- return ['numeric', 'min:1'];
+ return ['numeric'];
}
return ['numeric'];
case 'select':
diff --git a/client/components/forms/CheckboxInput.vue b/client/components/forms/CheckboxInput.vue
index fa37fd4..42f4093 100644
--- a/client/components/forms/CheckboxInput.vue
+++ b/client/components/forms/CheckboxInput.vue
@@ -40,7 +40,9 @@ export default {
},
mounted () {
- this.compVal = !!this.compVal
+ if (!this.compVal) {
+ this.compVal = false
+ }
}
}
diff --git a/client/components/forms/components/VCheckbox.vue b/client/components/forms/components/VCheckbox.vue
index 2a140d3..bf8c08a 100644
--- a/client/components/forms/components/VCheckbox.vue
+++ b/client/components/forms/components/VCheckbox.vue
@@ -3,12 +3,11 @@