From 948172aa8f1683ef1126ba309bdeed649f902e40 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-S=C3=A9bastien=20Caux?= <git@jscaux.org>
Date: Wed, 22 Dec 2021 14:43:37 +0100
Subject: [PATCH] Force recompute `cf_author_affiliation_indices_list` upon
 update

---
 scipost_django/journals/views.py | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/scipost_django/journals/views.py b/scipost_django/journals/views.py
index 5d600fa70..8495bff73 100644
--- a/scipost_django/journals/views.py
+++ b/scipost_django/journals/views.py
@@ -664,6 +664,8 @@ def add_affiliation(request, doi_label, pk):
     if form.is_valid():
         table.affiliations.add(form.cleaned_data['organization'])
         table.save()
+        Publication.objects.filter(id=table.publication.id).update(
+            cf_author_affiliation_indices_list=[]) # force recompute it
         return redirect(reverse('journals:author_affiliations',
                                 kwargs={'doi_label': doi_label}))
     context = {'table': table, 'add_affiliation_form': form}
@@ -680,6 +682,8 @@ def remove_affiliation(request, doi_label, pk, organization_id):
     org = get_object_or_404(Organization, pk=organization_id)
     table.affiliations.remove(org)
     table.save()
+    Publication.objects.filter(id=table.publication.id).update(
+        cf_author_affiliation_indices_list=[]) # force recompute it
     return redirect(reverse('journals:author_affiliations',
                             kwargs={'doi_label': doi_label}))
 
-- 
GitLab