mirror of
https://github.com/ae-utbm/sith.git
synced 2024-11-21 21:53:30 +00:00
subscriptions: add date_of_birth for new users created in subscription form
This commit is contained in:
parent
b2b03e530a
commit
e24eb8ce37
@ -15,6 +15,7 @@
|
|||||||
<p>{{ form.first_name.errors }}<label for="{{ form.first_name.name }}">{{ form.first_name.label }}</label> {{ form.first_name }}</p>
|
<p>{{ form.first_name.errors }}<label for="{{ form.first_name.name }}">{{ form.first_name.label }}</label> {{ form.first_name }}</p>
|
||||||
<p>{{ form.last_name.errors }}<label for="{{ form.last_name.name }}">{{ form.last_name.label }}</label> {{ form.last_name }}</p>
|
<p>{{ form.last_name.errors }}<label for="{{ form.last_name.name }}">{{ form.last_name.label }}</label> {{ form.last_name }}</p>
|
||||||
<p>{{ form.email.errors }}<label for="{{ form.email.name }}">{{ form.email.label }}</label> {{ form.email }}</p>
|
<p>{{ form.email.errors }}<label for="{{ form.email.name }}">{{ form.email.label }}</label> {{ form.email }}</p>
|
||||||
|
<p>{{ form.date_of_birth.errors }}<label for="{{ form.date_of_birth.name }}">{{ form.date_of_birth.label}}</label> {{ form.date_of_birth }}</p>
|
||||||
</div>
|
</div>
|
||||||
<p>{{ form.subscription_type.errors }}<label for="{{ form.subscription_type.name }}">{{ form.subscription_type.label }}</label> {{ form.subscription_type }}</p>
|
<p>{{ form.subscription_type.errors }}<label for="{{ form.subscription_type.name }}">{{ form.subscription_type.label }}</label> {{ form.subscription_type }}</p>
|
||||||
<p>{{ form.payment_method.errors }}<label for="{{ form.payment_method.name }}">{{ form.payment_method.label }}</label> {{
|
<p>{{ form.payment_method.errors }}<label for="{{ form.payment_method.name }}">{{ form.payment_method.label }}</label> {{
|
||||||
|
@ -35,6 +35,7 @@ import random
|
|||||||
from subscription.models import Subscription
|
from subscription.models import Subscription
|
||||||
from core.views.forms import SelectDateTime
|
from core.views.forms import SelectDateTime
|
||||||
from core.models import User
|
from core.models import User
|
||||||
|
from core.views.forms import SelectDate
|
||||||
|
|
||||||
|
|
||||||
class SelectionDateForm(forms.Form):
|
class SelectionDateForm(forms.Form):
|
||||||
@ -71,6 +72,7 @@ class SubscriptionForm(forms.ModelForm):
|
|||||||
max_length=User._meta.get_field("first_name").max_length
|
max_length=User._meta.get_field("first_name").max_length
|
||||||
)
|
)
|
||||||
self.fields["email"] = forms.EmailField()
|
self.fields["email"] = forms.EmailField()
|
||||||
|
self.fields["date_of_birth"] = forms.DateTimeField(widget=SelectDate)
|
||||||
self.fields.move_to_end("subscription_type")
|
self.fields.move_to_end("subscription_type")
|
||||||
self.fields.move_to_end("payment_method")
|
self.fields.move_to_end("payment_method")
|
||||||
self.fields.move_to_end("location")
|
self.fields.move_to_end("location")
|
||||||
@ -88,6 +90,7 @@ class SubscriptionForm(forms.ModelForm):
|
|||||||
and "last_name" not in self.errors.as_data()
|
and "last_name" not in self.errors.as_data()
|
||||||
and "first_name" not in self.errors.as_data()
|
and "first_name" not in self.errors.as_data()
|
||||||
and "email" not in self.errors.as_data()
|
and "email" not in self.errors.as_data()
|
||||||
|
and "date_of_birth" not in self.errors.as_data()
|
||||||
):
|
):
|
||||||
self.errors.pop("member", None)
|
self.errors.pop("member", None)
|
||||||
if self.errors:
|
if self.errors:
|
||||||
@ -102,6 +105,7 @@ class SubscriptionForm(forms.ModelForm):
|
|||||||
last_name=self.cleaned_data.get("last_name"),
|
last_name=self.cleaned_data.get("last_name"),
|
||||||
first_name=self.cleaned_data.get("first_name"),
|
first_name=self.cleaned_data.get("first_name"),
|
||||||
email=self.cleaned_data.get("email"),
|
email=self.cleaned_data.get("email"),
|
||||||
|
date_of_birth=self.cleaned_data.get("date_of_birth"),
|
||||||
)
|
)
|
||||||
u.generate_username()
|
u.generate_username()
|
||||||
u.set_password(str(random.randrange(1000000, 10000000)))
|
u.set_password(str(random.randrange(1000000, 10000000)))
|
||||||
@ -111,6 +115,7 @@ class SubscriptionForm(forms.ModelForm):
|
|||||||
self.errors.pop("last_name", None)
|
self.errors.pop("last_name", None)
|
||||||
self.errors.pop("first_name", None)
|
self.errors.pop("first_name", None)
|
||||||
self.errors.pop("email", None)
|
self.errors.pop("email", None)
|
||||||
|
self.errors.pop("date_of_birth", None)
|
||||||
if cleaned_data.get("member") is None:
|
if cleaned_data.get("member") is None:
|
||||||
# This should be handled here, but it is done in the Subscription model's clean method
|
# This should be handled here, but it is done in the Subscription model's clean method
|
||||||
# TODO investigate why!
|
# TODO investigate why!
|
||||||
|
Loading…
Reference in New Issue
Block a user