From: Radek Czajka Date: Fri, 6 Dec 2024 08:34:38 +0000 (+0100) Subject: remember url on donation step 1 X-Git-Url: https://git.mdrn.pl/wolnelektury.git/commitdiff_plain/2954f0e21a4c9adf96bb63c85339e7fa79d78e22 remember url on donation step 1 --- diff --git a/src/club/forms.py b/src/club/forms.py index df92524b9..22b0554d9 100644 --- a/src/club/forms.py +++ b/src/club/forms.py @@ -31,7 +31,8 @@ class DonationStep1Form(forms.ModelForm): 'monthly' ] - def __init__(self, *args, **kwargs): + def __init__(self, *args, referer=None, **kwargs): + self.referer = referer super().__init__(*args, **kwargs) club = models.Club.objects.first() if club is not None: @@ -48,6 +49,9 @@ class DonationStep1Form(forms.ModelForm): return state + def save(self, *args, **kwargs): + self.instance.source = self.referer + return super().save(*args, **kwargs) class DonationStep2Form(forms.ModelForm, NewsletterForm): @@ -64,8 +68,7 @@ class DonationStep2Form(forms.ModelForm, NewsletterForm): 'monthly': forms.HiddenInput, } - def __init__(self, referer=None, **kwargs): - self.referer = referer + def __init__(self, **kwargs): super().__init__(**kwargs) self.fields['first_name'].required = True @@ -83,11 +86,8 @@ class DonationStep2Form(forms.ModelForm, NewsletterForm): c, key, (lambda k: lambda: self[k])(key) )) - - def save(self, *args, **kwargs): NewsletterForm.save(self, *args, **kwargs) - self.instance.source = self.referer or '' instance = super().save(*args, **kwargs) consents = [] diff --git a/src/club/views.py b/src/club/views.py index 1ab1eae06..c6136b67f 100644 --- a/src/club/views.py +++ b/src/club/views.py @@ -99,7 +99,7 @@ class JoinView(CreateView): def get_form_kwargs(self): kwargs = super().get_form_kwargs() - #kwargs['referer'] = self.request.META.get('HTTP_REFERER', '') + kwargs['referer'] = self.request.META.get('HTTP_REFERER', '') return kwargs def form_valid(self, form):