From e88a93ec1cff2dc3007eb64f688b564959d07cb4 Mon Sep 17 00:00:00 2001
From: gaazzopa
Date: Wed, 14 Jul 2021 11:26:13 +0200
Subject: [PATCH] Access location in model_generator and report
---
cara/apps/calculator/model_generator.py | 3 +++
cara/apps/calculator/static/js/form.js | 9 +++++++++
.../calculator/templates/base/calculator.report.html.j2 | 1 +
cara/apps/calculator/templates/calculator.form.html.j2 | 2 +-
4 files changed, 14 insertions(+), 1 deletion(-)
diff --git a/cara/apps/calculator/model_generator.py b/cara/apps/calculator/model_generator.py
index a4b139e7..868b7620 100644
--- a/cara/apps/calculator/model_generator.py
+++ b/cara/apps/calculator/model_generator.py
@@ -50,6 +50,7 @@ class FormData:
infected_lunch_start: minutes_since_midnight #Used if infected_dont_have_breaks_with_exposed
infected_people: int
infected_start: minutes_since_midnight
+ location: str
mask_type: str
mask_wearing_option: str
mechanical_ventilation_type: str
@@ -100,6 +101,7 @@ class FormData:
'infected_lunch_start': '12:30',
'infected_people': _NO_DEFAULT,
'infected_start': '08:30',
+ 'location': _NO_DEFAULT,
'mask_type': 'Type I',
'mask_wearing_option': 'mask_off',
'mechanical_ventilation_type': 'not-applicable',
@@ -601,6 +603,7 @@ def baseline_raw_form_data():
'infected_lunch_start': '12:30',
'infected_people': '1',
'infected_start': '09:00',
+ 'location': 'Geneva',
'mask_type': 'Type I',
'mask_wearing_option': 'mask_off',
'mechanical_ventilation_type': '',
diff --git a/cara/apps/calculator/static/js/form.js b/cara/apps/calculator/static/js/form.js
index 567a1f89..548b1cc6 100644
--- a/cara/apps/calculator/static/js/form.js
+++ b/cara/apps/calculator/static/js/form.js
@@ -484,6 +484,15 @@ $(document).ready(function () {
else if (elemObj.type === 'checkbox') {
elemObj.checked = (value==1);
}
+
+ //Pre-select location
+ else if (elemObj.id === 'location_select') {
+ var location_option = document.createElement('option');
+ location_option.value = value;
+ location_option.innerHTML = value;
+ elemObj.append(location_option);
+ }
+
//Ignore 0 (default) values from server side
else if (!(elemObj.classList.contains("non_zero") || elemObj.classList.contains("remove_zero")) || (value != "0.0" && value != "0")) {
elemObj.value = value;
diff --git a/cara/apps/calculator/templates/base/calculator.report.html.j2 b/cara/apps/calculator/templates/base/calculator.report.html.j2
index d45a089a..718d2a21 100644
--- a/cara/apps/calculator/templates/base/calculator.report.html.j2
+++ b/cara/apps/calculator/templates/base/calculator.report.html.j2
@@ -53,6 +53,7 @@
Room Volume: {{ model.concentration_model.room.volume }} m³
Room Central Heating: {{ "On" if form.room_heating_option else "Off" }}
+ Room Location: {{ form.location }}
Ventilation data:
diff --git a/cara/apps/calculator/templates/calculator.form.html.j2 b/cara/apps/calculator/templates/calculator.form.html.j2
index 51e4a238..25cfeb2c 100644
--- a/cara/apps/calculator/templates/calculator.form.html.j2
+++ b/cara/apps/calculator/templates/calculator.form.html.j2
@@ -108,7 +108,7 @@ v{{ calculator_version }} Please sen