From 731083ea554c08bee9bd82b030c5cbeb2247e512 Mon Sep 17 00:00:00 2001
From: George Katsikas <giorgakis.katsikas@gmail.com>
Date: Thu, 20 Mar 2025 12:17:20 +0100
Subject: [PATCH] =?UTF-8?q?feat(admin):=20=F0=9F=9A=B8=20add=20reports=20a?=
 =?UTF-8?q?nd=20ref=20invitations=20to=20submissions=20admin?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 scipost_django/submissions/admin.py | 43 +++++++++++++++++++++++++----
 1 file changed, 38 insertions(+), 5 deletions(-)

diff --git a/scipost_django/submissions/admin.py b/scipost_django/submissions/admin.py
index 57dad9a63..bddc9881c 100644
--- a/scipost_django/submissions/admin.py
+++ b/scipost_django/submissions/admin.py
@@ -173,6 +173,33 @@ class RefereeIndicationInline(admin.TabularInline):
         return super().formfield_for_dbfield(db_field, request, **kwargs)
 
 
+class ReportAuthorStatusTabularInline(admin.TabularInline):
+    model = Report
+    extra = 0
+    min_num = 0
+    autocomplete_fields = ["author"]
+    fields = [
+        "author",
+        "status",
+        "invited",
+        "anonymous",
+    ]
+
+
+class RefereeInvitationTabularInline(admin.TabularInline):
+    model = RefereeInvitation
+    extra = 0
+    min_num = 0
+    autocomplete_fields = ["referee"]
+    fields = [
+        "referee",
+        "email_address",
+        "accepted",
+        "cancelled",
+        "fulfilled",
+    ]
+
+
 @admin.register(Submission)
 class SubmissionAdmin(GuardedModelAdmin):
     date_hierarchy = "submission_date"
@@ -213,18 +240,20 @@ class SubmissionAdmin(GuardedModelAdmin):
         "topics",
     ]
     inlines = [
+        RefereeIndicationInline,
         InternalPlagiarismAssessmentInline,
         iThenticatePlagiarismAssessmentInline,
         SubmissionAuthorProfileInline,
+        SubmissionClearanceInline,
         QualificationInline,
         ReadinessInline,
-        SubmissionClearanceInline,
-        SubmissionTieringInline,
-        SubmissionEventInline,
-        RefereeIndicationInline,
         ConditionalAssignmentOfferInline,
+        RefereeInvitationTabularInline,
+        ReportAuthorStatusTabularInline,
+        SubmissionTieringInline,
         CollectionInline,
         RedFlagInline,
+        SubmissionEventInline,
     ]
 
     # Admin fields should be added in the fieldsets
@@ -387,7 +416,11 @@ class RefereeInvitationAdmin(admin.ModelAdmin):
 
 @admin.register(Report)
 class ReportAdmin(admin.ModelAdmin):
-    search_fields = ["author__user__last_name", "submission__title"]
+    search_fields = [
+        "author__user__last_name",
+        "submission__title",
+        "submission__preprint__identifier_w_vn_nr",
+    ]
     list_display = (
         "author",
         "status",
-- 
GitLab