X-Git-Url: https://git.mdrn.pl/wolnelektury.git/blobdiff_plain/2954f0e21a4c9adf96bb63c85339e7fa79d78e22..f59de09387c7ceb7d6ab2ccf6ea25cb4be8dacb5:/src/club/forms.py diff --git a/src/club/forms.py b/src/club/forms.py index 22b0554d9..ceda8d5b1 100644 --- a/src/club/forms.py +++ b/src/club/forms.py @@ -35,6 +35,8 @@ class DonationStep1Form(forms.ModelForm): self.referer = referer super().__init__(*args, **kwargs) club = models.Club.objects.first() + if self.instance.is_custom_amount(): + self.fields['custom_amount'].initial = int(self.instance.amount) if club is not None: self.fields['custom_amount'].widget.attrs['min'] = club.min_amount @@ -50,7 +52,8 @@ class DonationStep1Form(forms.ModelForm): return state def save(self, *args, **kwargs): - self.instance.source = self.referer + if self.referer is not None: + self.instance.source = self.referer return super().save(*args, **kwargs) @@ -59,9 +62,7 @@ class DonationStep2Form(forms.ModelForm, NewsletterForm): model = models.Schedule fields = [ 'first_name', 'last_name', - 'email', 'phone', - 'postal', - 'postal_code', 'postal_town', 'postal_country', + 'email', ] widgets = { 'amount': forms.HiddenInput, @@ -71,17 +72,14 @@ class DonationStep2Form(forms.ModelForm, NewsletterForm): def __init__(self, **kwargs): super().__init__(**kwargs) - self.fields['first_name'].required = True - self.fields['last_name'].required = True - self.fields['phone'].required = True - self.consent = [] for c in models.Consent.objects.filter(active=True).order_by('order'): key = f'consent{c.id}' - self.fields[key] = forms.BooleanField( - label=c.text, - required=c.required - ) + if not c.required: + self.fields[key] = forms.BooleanField( + label=c.text, + required=c.required + ) self.consent.append(( c, key, (lambda k: lambda: self[k])(key) ))