From 3ad40b73833d3646703d02608d81b0ac3855ac86 Mon Sep 17 00:00:00 2001 From: imperosol Date: Wed, 3 Sep 2025 11:50:01 +0200 Subject: [PATCH] change birthdate only if user didn't have it previously --- subscription/forms.py | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/subscription/forms.py b/subscription/forms.py index 41d5ddbc..1ac6964d 100644 --- a/subscription/forms.py +++ b/subscription/forms.py @@ -158,9 +158,11 @@ class SubscriptionExistingUserForm(SubscriptionForm): self.fields["birthdate"].required = True if not initial: return - member = initial.get("member") - if member: - member = User.objects.filter(id=member).first() + member: str | None = initial.get("member") + if member and member.isdigit(): + member: User | None = User.objects.filter(id=int(member)).first() + else: + member = None if member and member.date_of_birth: # if there is an initial member with a birthdate, # there is no need to ask this to the user @@ -178,7 +180,7 @@ class SubscriptionExistingUserForm(SubscriptionForm): return super().save(*args, **kwargs) if ( self.cleaned_data["birthdate"] is not None - and self.instance.member.date_of_birth != self.cleaned_data["birthdate"] + and self.instance.member.date_of_birth is None ): self.instance.member.date_of_birth = self.cleaned_data["birthdate"] self.instance.member.save()