diff --git a/accessibility_monitoring_platform/apps/audits/forms.py b/accessibility_monitoring_platform/apps/audits/forms.py index cc20f5b95..58d094bf2 100644 --- a/accessibility_monitoring_platform/apps/audits/forms.py +++ b/accessibility_monitoring_platform/apps/audits/forms.py @@ -4,11 +4,7 @@ from django import forms -from ..cases.case_note_history import ( - AMPNoteTextField, - CaseNoteHistory, - CaseNoteHistoryForm, -) +from ..cases.case_note_history import AMPNoteTextField, CaseNoteHistory from ..cases.models import Boolean, Case, CaseCompliance from ..common.forms import ( AMPCharFieldWide, @@ -54,7 +50,7 @@ ) -class AuditMetadataUpdateForm(VersionForm, CaseNoteHistoryForm): +class AuditMetadataUpdateForm(VersionForm): """ Form for editing check metadata """ @@ -921,7 +917,7 @@ class Meta: ] -class AuditRetestMetadataUpdateForm(VersionForm, CaseNoteHistoryForm): +class AuditRetestMetadataUpdateForm(VersionForm): """ Form for editing audit retest metadata """ diff --git a/accessibility_monitoring_platform/apps/cases/case_note_history.py b/accessibility_monitoring_platform/apps/cases/case_note_history.py index fd76aa351..b53b06c99 100644 --- a/accessibility_monitoring_platform/apps/cases/case_note_history.py +++ b/accessibility_monitoring_platform/apps/cases/case_note_history.py @@ -8,17 +8,8 @@ from .models import Case, CaseNoteHistory -class AMPNoteWidget(forms.TextInput): - """Widget for Case notes input field with history""" - - template_name = "cases/case_note_history_field.html" - - class AMPNoteTextField(forms.CharField): - """ - Textarea input field in the style of GDS design system. - Widget shows history of Case notes added using this field. - """ + """Textarea input field for case notes""" note_type: CaseNoteHistory.NoteType = CaseNoteHistory.NoteType.GENERIC @@ -29,34 +20,13 @@ def __init__(self, *args, **kwargs) -> None: kwargs.setdefault("required", False) kwargs.setdefault( "widget", - AMPNoteWidget(attrs={"class": "govuk-textarea", "rows": "4"}), + forms.Textarea(attrs={"class": "govuk-textarea", "rows": "4"}), ) super().__init__(*args, **kwargs) - -class CaseNoteHistoryForm(forms.ModelForm): - """ - Form which includes Case notes field(s). - Adds history of notes entered to widgets. - """ - - version = forms.IntegerField(widget=forms.HiddenInput) - - def __init__(self, *args, **kwargs): - super().__init__(*args, **kwargs) - for field in self.fields.values(): - if isinstance(field, AMPNoteTextField): - if self.instance is not None: - case: Case | None = None - if isinstance(self.instance, Case): - case = self.instance - elif hasattr(self.instance, "case"): - case = self.instance.case - if case is not None and case.id: - field.widget.attrs["field_label"] = field.label - field.widget.attrs["case_note_history"] = ( - case.case_note_history.filter(note_type=field.note_type) - ) + @property + def case_note_history(self, case: Case): + return case.case_note_history.filter(note_type=self.note_type) def add_to_case_note_history( diff --git a/accessibility_monitoring_platform/apps/cases/forms.py b/accessibility_monitoring_platform/apps/cases/forms.py index f06fce0f0..9916cd5fc 100644 --- a/accessibility_monitoring_platform/apps/cases/forms.py +++ b/accessibility_monitoring_platform/apps/cases/forms.py @@ -32,7 +32,7 @@ EqualityBodyCSVColumn, populate_equality_body_columns, ) -from .case_note_history import AMPNoteTextField, CaseNoteHistoryForm +from .case_note_history import AMPNoteTextField from .models import ( Boolean, Case, @@ -166,7 +166,7 @@ def clean_enforcement_body(self): return enforcement_body -class CaseMetadataUpdateForm(CaseCreateForm, VersionForm, CaseNoteHistoryForm): +class CaseMetadataUpdateForm(CaseCreateForm, VersionForm): """ Form for updating case metadata fields """ @@ -387,7 +387,7 @@ def __init__(self, *args, **kwargs): self.fields["publish_report_complete_date"].widget = forms.HiddenInput() -class ManageContactDetailsUpdateForm(VersionForm, CaseNoteHistoryForm): +class ManageContactDetailsUpdateForm(VersionForm): """ Form for updating test results """ @@ -440,7 +440,7 @@ class Meta: fields = ["version", "name", "job_title", "email", "preferred"] -class CaseRequestContactDetailsUpdateForm(VersionForm, CaseNoteHistoryForm): +class CaseRequestContactDetailsUpdateForm(VersionForm): """ Form to update Find contact details """ @@ -468,7 +468,7 @@ class Meta: ] -class CaseOneWeekContactDetailsUpdateForm(VersionForm, CaseNoteHistoryForm): +class CaseOneWeekContactDetailsUpdateForm(VersionForm): """ Form to update One week contact details """ @@ -498,7 +498,7 @@ class Meta: ] -class CaseFourWeekContactDetailsUpdateForm(VersionForm, CaseNoteHistoryForm): +class CaseFourWeekContactDetailsUpdateForm(VersionForm): """ Form to update Four week contact details """ @@ -530,7 +530,7 @@ class Meta: ] -class CaseReportSentOnUpdateForm(VersionForm, CaseNoteHistoryForm): +class CaseReportSentOnUpdateForm(VersionForm): """ Form to update Report sent on """ @@ -557,7 +557,7 @@ class Meta: ] -class CaseReportOneWeekFollowupUpdateForm(VersionForm, CaseNoteHistoryForm): +class CaseReportOneWeekFollowupUpdateForm(VersionForm): """ Form to update One week followup """ @@ -597,7 +597,7 @@ def __init__(self, *args, **kwargs): self.fields["one_week_followup_sent_to_email"].widget = forms.HiddenInput() -class CaseReportFourWeekFollowupUpdateForm(VersionForm, CaseNoteHistoryForm): +class CaseReportFourWeekFollowupUpdateForm(VersionForm): """ Form to update Four week followup """ @@ -637,7 +637,7 @@ def __init__(self, *args, **kwargs): self.fields["four_week_followup_sent_to_email"].widget = forms.HiddenInput() -class CaseReportAcknowledgedUpdateForm(VersionForm, CaseNoteHistoryForm): +class CaseReportAcknowledgedUpdateForm(VersionForm): """ Form to update Report acknowledged """ @@ -666,7 +666,7 @@ class Meta: ] -class CaseTwelveWeekUpdateRequestedUpdateForm(VersionForm, CaseNoteHistoryForm): +class CaseTwelveWeekUpdateRequestedUpdateForm(VersionForm): """ Form to update 12-week update requested """ @@ -699,7 +699,7 @@ class Meta: ] -class CaseOneWeekFollowupFinalUpdateForm(VersionForm, CaseNoteHistoryForm): +class CaseOneWeekFollowupFinalUpdateForm(VersionForm): """ Form to update One week followup for final update """ @@ -745,7 +745,7 @@ def __init__(self, *args, **kwargs): ) -class CaseTwelveWeekUpdateAcknowledgedUpdateForm(VersionForm, CaseNoteHistoryForm): +class CaseTwelveWeekUpdateAcknowledgedUpdateForm(VersionForm): """ Form to update 12-week update request acknowledged """ @@ -962,7 +962,7 @@ class Meta: ] -class CaseStatementEnforcementUpdateForm(VersionForm, CaseNoteHistoryForm): +class CaseStatementEnforcementUpdateForm(VersionForm): """ Form to update statement enforcement """ @@ -985,7 +985,7 @@ class Meta: ] -class CaseEqualityBodyMetadataUpdateForm(VersionForm, CaseNoteHistoryForm): +class CaseEqualityBodyMetadataUpdateForm(VersionForm): """ Form to update equality body metadata """ diff --git a/accessibility_monitoring_platform/apps/cases/templates/cases/case_note_history.html b/accessibility_monitoring_platform/apps/cases/templates/cases/case_note_history.html index cd4ad6145..7cc865e07 100644 --- a/accessibility_monitoring_platform/apps/cases/templates/cases/case_note_history.html +++ b/accessibility_monitoring_platform/apps/cases/templates/cases/case_note_history.html @@ -23,11 +23,11 @@
{{ case_note.note }}
+
{% if case_note.user %}
- By {{ case_note.user.get_full_name }} on {{ case_note.created }}
+ By {{ case_note.user.get_full_name }} on {{ case_note.created|amp_datetime }}
{% else %}
Note entered before history implemented
{% endif %}
diff --git a/accessibility_monitoring_platform/apps/cases/templates/cases/case_note_history_field.html b/accessibility_monitoring_platform/apps/cases/templates/cases/case_note_history_field.html
deleted file mode 100644
index 923903c30..000000000
--- a/accessibility_monitoring_platform/apps/cases/templates/cases/case_note_history_field.html
+++ /dev/null
@@ -1,25 +0,0 @@
-
- {{ note.note }}
-
- {% if note.user %}
- By {{ note.user.get_full_name }} on {{ note.created }}
- {% else %}
- Note entered before history implemented
- {% endif %}
-
- {{ note.note|markdown_to_html }}
+
+ {% if note.user %}
+ By {{ note.user.get_full_name }} on {{ note.created|amp_datetime }}
+ {% else %}
+ Note entered before history implemented
+ {% endif %}
+
+
- {{ widget.attrs.field_label }} history ({{ widget.attrs.case_note_history|length}})
-
-
+ {{ field.field.label }} history ({{ filtered_case_note_history|length}})
+
+