From 22154a92b6bad1f2187dda974e128909d69605fd Mon Sep 17 00:00:00 2001 From: Greg Kempe Date: Wed, 6 Mar 2024 16:30:27 +0200 Subject: [PATCH] Revert "Revert "Merge pull request #1760 from laws-africa/source-file"" This reverts commit 9e18d6bd01d9a1d63d0d1e2c157604fb7197ed0c. --- peachjam/admin.py | 7 ++----- peachjam/forms.py | 11 +++++++++++ 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/peachjam/admin.py b/peachjam/admin.py index ac1d3579e..1db0605fc 100644 --- a/peachjam/admin.py +++ b/peachjam/admin.py @@ -322,11 +322,6 @@ def clean_content_html(self): return self.instance.content_html return self.cleaned_data["content_html"] - def _save_m2m(self): - super()._save_m2m() - # update document text - self.instance.update_text_content() - class AttachedFilesInline(BaseAttachmentFileInline): model = AttachedFiles @@ -504,7 +499,9 @@ def save_related(self, request, form, formsets, change): cp.queue_re_extract_citations(form.instance.date) super().save_related(request, form, formsets, change) + form.instance.save() + form.instance.update_text_content() def get_urls(self): return [ diff --git a/peachjam/forms.py b/peachjam/forms.py index cc7f5fdcb..fa0a1b8dd 100644 --- a/peachjam/forms.py +++ b/peachjam/forms.py @@ -188,6 +188,17 @@ def _save_m2m(self): self.instance.file_as_pdf.delete() self.instance.ensure_file_as_pdf() + def clean(self): + cleaned_data = super().clean() + if "file" in self.changed_data: + # clear all the fields that are derived from the file + self.instance.mimetype = None + self.instance.size = None + self.instance.file_as_pdf = None + self.instance.filename = None + + return cleaned_data + class AttachedFilesForm(AttachmentFormMixin, forms.ModelForm): class Meta: