From aaa212f10055ddfb7b76379f76f3e1d066280f45 Mon Sep 17 00:00:00 2001
From: "N. Geisler" <ngeisler@fachschaft.informatik.tu-darmstadt.de>
Date: Sun, 17 Jan 2021 00:23:05 +0100
Subject: [PATCH] avoid code duplication

---
 AKSubmission/views.py | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/AKSubmission/views.py b/AKSubmission/views.py
index f83bf3de..b0e79389 100644
--- a/AKSubmission/views.py
+++ b/AKSubmission/views.py
@@ -281,24 +281,21 @@ class AKInterestView(RedirectView):
     permanent = False
     pattern_name = 'submit:ak_detail'
 
-    def get_redirect_url(self, *args, **kwargs):
+    def get(self, request, *args, **kwargs):
+        # Increase interest counter for given AK
         ak = get_object_or_404(AK, pk=kwargs['pk'])
         if ak.event.active:
             ak.increment_interest()
             messages.add_message(self.request, messages.SUCCESS, _("Interest saved"))
-        return super().get_redirect_url(*args, **kwargs)
+        return super().get(request, *args, **kwargs)
 
 
 # when the interest increase request comes from the AK overview page, redirect to that instead of the AK overview page
-class AKOverviewInterestView(RedirectView):
-    permanent = False
+class AKOverviewInterestView(AKInterestView):
     pattern_name = 'submit:submission_overview'
 
     def get_redirect_url(self, *args, **kwargs):
-        ak = get_object_or_404(AK, pk=kwargs['pk'])
-        if ak.event.active:
-            ak.increment_interest()
-            messages.add_message(self.request, messages.SUCCESS, _("Interest saved"))
+        # No PK needed for overview page of all AKs
         del kwargs['pk']
         return super().get_redirect_url(*args, **kwargs)
 
-- 
GitLab