From 3f7e20c4248124f81f8ee708afbbe758c424d620 Mon Sep 17 00:00:00 2001
From: Dominik George <dominik.george@teckids.org>
Date: Fri, 24 Jun 2022 21:08:26 +0200
Subject: [PATCH] Pass on comment to next checkpoint view

---
 aleksis/apps/paweljong/views.py | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/aleksis/apps/paweljong/views.py b/aleksis/apps/paweljong/views.py
index 46dc992..c5b0131 100644
--- a/aleksis/apps/paweljong/views.py
+++ b/aleksis/apps/paweljong/views.py
@@ -9,6 +9,7 @@ from django.shortcuts import get_object_or_404, redirect, render
 from django.urls import reverse, reverse_lazy
 from django.utils import timezone
 from django.utils.decorators import method_decorator
+from django.utils.http import urlencode
 from django.utils.text import slugify
 from django.utils.translation import ugettext as _
 from django.views.decorators.cache import never_cache
@@ -973,6 +974,12 @@ class EventCheckpointView(PermissionRequiredMixin, FormView):
     permission_required = "paweljong.can_checkpoint"
     form_class = EventCheckpointForm
 
+    def get_initial():
+        initial = super().get_initial() or {}
+        if "comment" in request.GET:
+            initial["comment"] = request.GET.get("comment")
+        return initial
+
     def form_valid(self, form):
         checkpoint = Checkpoint()
 
@@ -991,10 +998,11 @@ class EventCheckpointView(PermissionRequiredMixin, FormView):
 
         checkpoint.save()
         messages.success(self.request, _("Person successfully checked."))
+        self._comment = checkpoint.comment
         return super().form_valid(self)
 
     def get_success_url(self):
-        return reverse("event_by_name_checkpoint", kwargs={"slug": self.kwargs["slug"]})
+        return reverse("event_by_name_checkpoint", kwargs={"slug": self.kwargs["slug"]}) + "?" + urlencode({"comment": self._comment})
 
 
 class ViewTerms(PermissionRequiredMixin, DetailView):
-- 
GitLab