69 lines
1.7 KiB
Python
69 lines
1.7 KiB
Python
from django import forms
|
|
from django.contrib.auth.forms import UserCreationForm, UserChangeForm
|
|
from allauth.account.forms import SignupForm
|
|
from captcha.fields import CaptchaField
|
|
from .models import User
|
|
|
|
|
|
class AccountCreateForm(UserCreationForm):
|
|
class Meta:
|
|
model = User
|
|
fields = ('username', 'email')
|
|
|
|
|
|
class AccountUpdateForm(UserChangeForm):
|
|
class Meta:
|
|
model = User
|
|
fields = (
|
|
'first_name',
|
|
'last_name',
|
|
'email',
|
|
'shipping_street_address_1',
|
|
'shipping_street_address_2',
|
|
'shipping_city',
|
|
'shipping_state',
|
|
'shipping_postal_code',
|
|
)
|
|
|
|
|
|
class CustomerUpdateForm(forms.ModelForm):
|
|
class Meta:
|
|
model = User
|
|
fields = (
|
|
'email',
|
|
)
|
|
|
|
|
|
class CustomerShippingAddressUpdateForm(forms.ModelForm):
|
|
class Meta:
|
|
model = User
|
|
fields = (
|
|
'first_name',
|
|
'last_name',
|
|
'shipping_street_address_1',
|
|
'shipping_street_address_2',
|
|
'shipping_city',
|
|
'shipping_state',
|
|
'shipping_postal_code',
|
|
)
|
|
labels = {
|
|
'shipping_street_address_1': 'Street line 1',
|
|
'shipping_street_address_2': 'Street line 2',
|
|
'shipping_city': 'City',
|
|
'shipping_state': 'State',
|
|
'shipping_postal_code': 'ZIP code',
|
|
}
|
|
|
|
|
|
class UserSignupForm(SignupForm):
|
|
first_name = forms.CharField(
|
|
required=True,
|
|
widget=forms.TextInput(attrs={'placeholder': 'First name'})
|
|
)
|
|
last_name = forms.CharField(
|
|
required=True,
|
|
widget=forms.TextInput(attrs={'placeholder': 'Last name'})
|
|
)
|
|
captcha = CaptchaField()
|
|
|