From c027182962aa5efc78798cee0b20d43fe6d2a690 Mon Sep 17 00:00:00 2001 From: FreneticScribbler Date: Mon, 14 Dec 2020 21:58:15 +0000 Subject: [PATCH] More moving of event size logic --- RIGS/hs.py | 16 +++++- RIGS/templates/event_checklist_detail.html | 11 ++-- RIGS/templates/event_checklist_form.html | 60 +++++----------------- RIGS/templates/partials/event_size.html | 7 +++ RIGS/templates/risk_assessment_detail.html | 7 +-- RIGS/views.py | 1 - 6 files changed, 38 insertions(+), 64 deletions(-) create mode 100644 RIGS/templates/partials/event_size.html diff --git a/RIGS/hs.py b/RIGS/hs.py index f2843ce8..0f94a40e 100644 --- a/RIGS/hs.py +++ b/RIGS/hs.py @@ -5,7 +5,7 @@ from django.http import HttpResponseRedirect from django.urls import reverse_lazy from reversion import revisions as reversion from django.db.models import AutoField, ManyToOneRel - +from django.contrib import messages class EventRiskAssessmentCreate(generic.CreateView): model = models.RiskAssessment @@ -141,6 +141,20 @@ class EventChecklistCreate(generic.CreateView): template_name = 'event_checklist_form.html' form_class = forms.EventChecklistForm + # From both business logic and programming POVs, RAs must exist before ECs! + def get(self, *args, **kwargs): + epk = kwargs.get('pk') + event = models.Event.objects.get(pk=epk) + + # Check if RA exists + ra = models.RiskAssessment.objects.filter(event=event).first() + + if ra is None: + messages.error(self.request, 'A Risk Assessment must exist prior to creating any Event Checklists for {}! Please create one now.'.format(event)) + return HttpResponseRedirect(reverse_lazy('event_ra', kwargs={'pk': epk})) + + return super(EventChecklistCreate, self).get(self) + def get_form(self, **kwargs): form = super(EventChecklistCreate, self).get_form(**kwargs) epk = self.kwargs.get('pk') diff --git a/RIGS/templates/event_checklist_detail.html b/RIGS/templates/event_checklist_detail.html index d7aa983d..2df9e169 100644 --- a/RIGS/templates/event_checklist_detail.html +++ b/RIGS/templates/event_checklist_detail.html @@ -104,15 +104,10 @@
-
Power {% if object.event_size == 2 %} - Large Event - {% elif object.event_size == 1 %} - Medium Event - {%else%}Small Event - {%endif%}
- {% if object.event_size != 2 %} +
Power {% include 'partials/event_size.html' with object=object.event.riskassessment %}
+ {% if object.event.riskassessment.event_size != 2 %}
- {% if object.event_size == 1 %} + {% if object.event.riskassessment.event_size == 1 %}
{{ object|help_text:'source_rcd'|safe }}
diff --git a/RIGS/templates/event_checklist_form.html b/RIGS/templates/event_checklist_form.html index aab7acae..30e33da4 100644 --- a/RIGS/templates/event_checklist_form.html +++ b/RIGS/templates/event_checklist_form.html @@ -29,36 +29,7 @@ {% include 'partials/datetime-fix.html' %}