diff --git a/RIGS/forms.py b/RIGS/forms.py
index f3ac49d3..6faf6e67 100644
--- a/RIGS/forms.py
+++ b/RIGS/forms.py
@@ -161,12 +161,23 @@ class EventRiskAssessmentForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(EventRiskAssessmentForm, self).__init__(*args, **kwargs)
for name, field in self.fields.items():
- if field.__class__ == forms.BooleanField:
+ if str(name) == 'supervisor_consulted':
+ field.widget = forms.CheckboxInput()
+ elif field.__class__ == forms.BooleanField:
field.widget = forms.RadioSelect(choices=[
(True, 'Yes'),
(False, 'No')
], attrs={'class': 'custom-control-input', 'required': 'true'})
+ def clean(self):
+ unexpected_values = []
+ for field, value in models.RiskAssessment.expected_values.items():
+ if self.cleaned_data.get(field) != value:
+ unexpected_values.append("
{}
".format(self._meta.model._meta.get_field(field).help_text))
+ if len(unexpected_values) > 0 and not self.cleaned_data.get('supervisor_consulted'):
+ raise forms.ValidationError("Your answers to these questions:
{% if edit %}Edit{% else %}Create{% endif %} Risk Assessment for Event N{{ event.pk|stringformat:"05d" }}
- {% include 'form_errors.html' %}
+
+ {% if form.errors %}
+
+
+
+ {% with form|nice_errors as qq %}
+ {% for error_name,desc in qq.items %}
+ {% if error_name == 'General form errors' %}
+ {{ form.non_field_errors.0|safe }}
+