diff options
author | Jeremy Kerr <jk@ozlabs.org> | 2008-08-22 10:41:25 +0800 |
---|---|---|
committer | Jeremy Kerr <jk@ozlabs.org> | 2008-08-22 10:41:25 +0800 |
commit | f1e089f7736ac8f7b9af784461350c4c169211ad (patch) | |
tree | e45453e0d1fe5695b5227249040a668bff2610c1 /apps/patchwork/forms.py | |
parent | 6a2a96299d4802cb4fb82891daf6f81ff33ba4e0 (diff) | |
download | patchwork-f1e089f7736ac8f7b9af784461350c4c169211ad.tar.bz2 patchwork-f1e089f7736ac8f7b9af784461350c4c169211ad.tar.xz |
Use django-registration infrastructure
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Diffstat (limited to 'apps/patchwork/forms.py')
-rw-r--r-- | apps/patchwork/forms.py | 69 |
1 files changed, 27 insertions, 42 deletions
diff --git a/apps/patchwork/forms.py b/apps/patchwork/forms.py index a758d46..7adc8c0 100644 --- a/apps/patchwork/forms.py +++ b/apps/patchwork/forms.py @@ -21,48 +21,33 @@ from django.contrib.auth.models import User from django import forms -from patchwork.models import RegistrationRequest, Patch, State, Bundle, \ - UserProfile - -class RegisterForm(forms.ModelForm): - password = forms.CharField(widget = forms.PasswordInput) - email = forms.EmailField(max_length = 200) - - class Meta: - model = RegistrationRequest - exclude = ['key', 'active', 'date'] - - def clean_email(self): - value = self.cleaned_data['email'] - try: - User.objects.get(email = value) - raise forms.ValidationError(('The email address %s has ' + - 'has already been registered') % value) - except User.DoesNotExist: - pass - try: - RegistrationRequest.objects.get(email = value) - raise forms.ValidationError(('The email address %s has ' + - 'has already been registered') % value) - except RegistrationRequest.DoesNotExist: - pass - return value - - def clean_username(self): - value = self.cleaned_data['username'] - try: - User.objects.get(username = value) - raise forms.ValidationError(('The username %s has ' + - 'has already been registered') % value) - except User.DoesNotExist: - pass - try: - RegistrationRequest.objects.get(username = value) - raise forms.ValidationError(('The username %s has ' + - 'has already been registered') % value) - except RegistrationRequest.DoesNotExist: - pass - return value +from patchwork.models import Patch, State, Bundle, UserProfile +from registration.forms import RegistrationFormUniqueEmail +from registration.models import RegistrationProfile + +class RegistrationForm(RegistrationFormUniqueEmail): + first_name = forms.CharField(max_length = 30, required = False) + last_name = forms.CharField(max_length = 30, required = False) + username = forms.CharField(max_length=30, label=u'Username') + email = forms.EmailField(max_length=100, label=u'Email address') + password = forms.CharField(widget=forms.PasswordInput(), + label='Password') + password1 = forms.BooleanField(required = False) + password2 = forms.BooleanField(required = False) + + def save(self, profile_callback = None): + user = RegistrationProfile.objects.create_inactive_user( \ + username = self.cleaned_data['username'], + password = self.cleaned_data['password'], + email = self.cleaned_data['email'], + profile_callback = profile_callback) + user.first_name = self.cleaned_data.get('first_name', '') + user.last_name = self.cleaned_data.get('last_name', '') + user.save() + return user + + def clean(self): + return self.cleaned_data class LoginForm(forms.Form): username = forms.CharField(max_length = 30) |