From ac3d05a15f35cad45c1155b354d7a26bfe45f1d8 Mon Sep 17 00:00:00 2001 From: Todd Dembrey <todd.dembrey@torchbox.com> Date: Wed, 6 Nov 2019 17:27:06 +0000 Subject: [PATCH] Use the view to handle the report dates provided (#1667) * Use the view to handle the report dates provided --- opentech/apply/projects/models.py | 6 ------ .../templates/application_projects/includes/reports.html | 2 +- opentech/apply/projects/views/project.py | 6 ++++++ .../static_src/src/javascript/apply/report-calculator.js | 9 ++++----- 4 files changed, 11 insertions(+), 12 deletions(-) diff --git a/opentech/apply/projects/models.py b/opentech/apply/projects/models.py index 4d0b0034b..0053f4c30 100644 --- a/opentech/apply/projects/models.py +++ b/opentech/apply/projects/models.py @@ -767,12 +767,6 @@ class Report(models.Model): return self.project.start_date - def serialize(self): - return { - 'endDate': self.end_date, - 'projectEndDate': self.project.end_date, - } - class ReportVersion(models.Model): report = models.ForeignKey("Report", on_delete=models.CASCADE, related_name="versions") diff --git a/opentech/apply/projects/templates/application_projects/includes/reports.html b/opentech/apply/projects/templates/application_projects/includes/reports.html index 809a1bb7a..d2e467468 100644 --- a/opentech/apply/projects/templates/application_projects/includes/reports.html +++ b/opentech/apply/projects/templates/application_projects/includes/reports.html @@ -13,7 +13,7 @@ </p> <!-- Change report frequency modal --> <div class="modal" id="change-frequency"> - {{ object.report_config.last_report.serialize|json_script:"lastReportData" }} + {{ report_data|json_script:"reportData" }} <h4 class="modal__header-bar">Change reporting frequency</h4> <div class="form__info-box"> <p> diff --git a/opentech/apply/projects/views/project.py b/opentech/apply/projects/views/project.py index 76e4e727d..aa8182867 100644 --- a/opentech/apply/projects/views/project.py +++ b/opentech/apply/projects/views/project.py @@ -438,6 +438,12 @@ class AdminProjectDetailView( context = super().get_context_data(**kwargs) context['approvals'] = self.object.approvals.distinct('by') context['remaining_document_categories'] = list(self.object.get_missing_document_categories()) + + if self.object.is_in_progress: + context['report_data'] = { + 'startDate': self.object.report_config.current_due_report().start_date, + 'projectEndDate': self.object.end_date, + } return context diff --git a/opentech/static_src/src/javascript/apply/report-calculator.js b/opentech/static_src/src/javascript/apply/report-calculator.js index e557bdc35..c3a038c3e 100644 --- a/opentech/static_src/src/javascript/apply/report-calculator.js +++ b/opentech/static_src/src/javascript/apply/report-calculator.js @@ -2,7 +2,7 @@ 'use strict'; - const reportData = JSON.parse(document.getElementById('lastReportData').textContent); + const reportData = JSON.parse(document.getElementById('reportData').textContent); // Form inputs const frequencyNumberInput = document.getElementById('id_occurrence'); @@ -39,11 +39,10 @@ pluraliseTimePeriod(frequencyNumberInput.value); } - // Set the reporting period start date (endDate + 1) + // Set the reporting period start date function setReportPeriodStart() { - const endDate = new Date(reportData.endDate); - endDate.setDate(endDate.getDate() + 1); - periodStartSlot.innerHTML = endDate.toISOString().slice(0, 10); + const startDate = new Date(reportData.startDate); + periodStartSlot.innerHTML = startDate.toISOString().slice(0, 10); } function addReportPeriodEvents() { -- GitLab