From 34949f0859b0416997073ddff67209e774a3f018 Mon Sep 17 00:00:00 2001
From: Yohann D'ANELLO <yohann.danello@gmail.com>
Date: Fri, 27 Mar 2020 19:16:38 +0100
Subject: [PATCH] Fix activity in Guest model

---
 apps/activity/forms.py | 7 -------
 apps/activity/urls.py  | 2 +-
 apps/activity/views.py | 8 +++++++-
 3 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/apps/activity/forms.py b/apps/activity/forms.py
index 6ef8a278..1602eb63 100644
--- a/apps/activity/forms.py
+++ b/apps/activity/forms.py
@@ -29,13 +29,6 @@ class ActivityForm(forms.ModelForm):
 
 
 class GuestForm(forms.ModelForm):
-    def clean(self, **kwargs):
-        cleaned_data = super().clean()
-
-        self.instance.activity = cleaned_data["activity"] = Activity.objects.get(pk=1)
-
-        return cleaned_data
-
     class Meta:
         model = Guest
         fields = ('last_name', 'first_name', 'inviter', )
diff --git a/apps/activity/urls.py b/apps/activity/urls.py
index 006dcce3..f074e8f7 100644
--- a/apps/activity/urls.py
+++ b/apps/activity/urls.py
@@ -10,7 +10,7 @@ app_name = 'activity'
 urlpatterns = [
     path('', views.ActivityListView.as_view(), name='activity_list'),
     path('<int:pk>/', views.ActivityDetailView.as_view(), name='activity_detail'),
-    path('<int:activity_pk>/invite/', views.ActivityInviteView.as_view(), name='activity_invite'),
+    path('<int:pk>/invite/', views.ActivityInviteView.as_view(), name='activity_invite'),
     path('<int:pk>/entry/', views.ActivityEntryView.as_view(), name='activity_entry'),
     path('<int:pk>/update/', views.ActivityUpdateView.as_view(), name='activity_update'),
     path('new/', views.ActivityCreateView.as_view(), name='activity_create'),
diff --git a/apps/activity/views.py b/apps/activity/views.py
index 03fa793f..10e073f0 100644
--- a/apps/activity/views.py
+++ b/apps/activity/views.py
@@ -43,9 +43,15 @@ class ActivityUpdateView(LoginRequiredMixin, UpdateView):
 class ActivityInviteView(LoginRequiredMixin, CreateView):
     model = Guest
     form_class = GuestForm
-    success_url = reverse_lazy('activity:activity_list')
     template_name = "activity/activity_invite.html"
 
+    def form_valid(self, form):
+        form.instance.activity = Activity.objects.get(pk=self.kwargs["pk"])
+        return super().form_valid(form)
+
+    def get_success_url(self, **kwargs):
+        return reverse_lazy('activity:activity_detail', kwargs={"pk": self.kwargs["pk"]})
+
 
 class ActivityEntryView(LoginRequiredMixin, TemplateView):
     pass
-- 
GitLab