def signup(request): """User registration view. **Context** ``form`` An instance of UserCreationForm. **Template:** :template:`users/signup.html` """ if request.method == 'POST': form = UserCreationForm(request.POST) if form.is_valid(): email = form.cleaned_data['email'] password = form.cleaned_data['password1'] data = { 'timezone': form.cleaned_data['timezone'] or 'UTC', 'username': form.cleaned_data['username'], } user = User.objects.create_user(email=email, password=password, **data) signin(request, user) return HttpResponseRedirect('/') else: form = UserCreationForm() context = {'form': form} return render(request, 'users/signup.html', context)
def test_clean_username(self): # A user with proto_user params does not exist yet. proto_user = UserFactory.build() form = UserCreationForm( { "username": proto_user.username, "password1": proto_user._password, "password2": proto_user._password, } ) assert form.is_valid() assert form.clean_username() == proto_user.username # Creating a user. form.save() # The user with proto_user params already exists, # hence cannot be created. form = UserCreationForm( { "username": proto_user.username, "password1": proto_user._password, "password2": proto_user._password, } ) assert not form.is_valid() assert len(form.errors) == 1 assert "username" in form.errors
def register(request): if request.method == 'POST': form = UserCreationForm(request.POST) if form.is_valid(): form.save() user = form.instance user.email = form.cleaned_data['email'] #add user to group Users user.groups.add(Group.objects.get(name='Users')) user.save() #p = user.get_profile() p = UserProfile() p.user = user #cleaned_data value is available as unicode string p.gender = form.cleaned_data['gender'] == 'True' p.save() #login user - after saving user object, password contains just hash, #that's why we use the original password from the form user = authenticate(username=user.username, password=form.clean_password2()) if user: login(request, user) return HttpResponseRedirect(reverse('home')) else: form = UserCreationForm() return render_to_response('auth/register.html', {'form': form}, context_instance=RequestContext(request))
def register(request): if request.method == 'POST': form = UserCreationForm(request.POST) if form.is_valid(): form.save() return redirect('book-list') else: form = UserCreationForm() return render(request, 'registration/register.html', {'form': form})
def registration(request): if request.GET.get('ref') is not None: print(request.GET.get('ref')) if request.method == 'POST': form = UserCreationForm(request.POST) if form.is_valid(): user = form.save(referal=request.GET.get('ref')) login(request, user) return redirect('users:documents') else: form = UserCreationForm() return render(request, 'registration/registration.html', {'form': form})
def register_view(request): if request.method != 'POST': form = UserCreationForm() else: form = UserCreationForm(data=request.POST) if form.create(request): return redirect('home') # Render context = regular_context(request.user) context['form'] = form return render(request, 'register.html', context)
def signup(request): if request.method == 'POST': form = UserCreationForm(request.POST) if form.is_valid(): form.save() username = form.cleaned_data.get('username') raw_password = form.cleaned_data.get('password1') user = authenticate(username=username, password=raw_password) login(request, user) return redirect('landingpage') else: form = UserCreationForm() return render(request, 'signup.html', {'form': form})
def create_user_account(request): if request.method == 'POST': form = UserCreationForm(request.POST) if form.is_valid(): form.save() primary_email = form.cleaned_data['primary_email'] password = form.cleaned_data['password1'] user = authenticate(username=primary_email, password=password) login(request, user) return redirect('/') else: form = UserCreationForm() return render(request, 'users/create_user_account.html', {'form': form})
def post(self, request, invitation_hash): signup_invitation = self.get_invitation(request, invitation_hash) if not signup_invitation: return render(request, 'registration/invalid_signup.html', {'hash': invitation_hash}) form = UserCreationForm(request.POST) if request.POST.get("email") != signup_invitation.email_invited: messages.error( request, "You must sign up with the invited email: {}".format( signup_invitation.email_invited)) return render( request, self.template_name, { 'form': form, 'categories': Category.objects.all(), 'invitation': signup_invitation }) if form.is_valid(): form.save(chosen_categories=request.POST.getlist('categories'), signup_invitation=signup_invitation) user = authenticate(username=form.cleaned_data.get('username'), password=form.cleaned_data.get('password1')) login(request, user) return redirect(self.redirect_to)
def test_form_with_valid_data(self): form = UserCreationForm(self.data) self.assertTrue(form.is_valid()) form.save() self.assertEqual( User.objects.all().filter(email=self.data['email']).count(), 1)
def test_create_icase_duplicate(self): """Ensure email validation is case insensitive""" form = UserCreationForm(data={ 'email': '*****@*****.**', 'password1': 'new', 'password2': 'new', }) self.assertFalse(form.is_valid())
def test_create_duplicate(self): """Ensure an existing email address results in an error""" form = UserCreationForm(data={ 'email': '*****@*****.**', 'password1': 'new', 'password2': 'new', }) self.assertFalse(form.is_valid())
def test_create_unique(self): """Ensure basic data validates""" form = UserCreationForm(data={ 'email': '*****@*****.**', 'password1': 'pass', 'password2': 'pass', }) self.assertTrue(form.is_valid())
def post(self, request): form = UserCreationForm(request.POST) if form.is_valid(): form.save() messages.success( request, f'Your account has been created! You are now able to log in') return redirect('blog-home')
def test_password2_matches_passwords1(self): form = UserCreationForm(data={ 'username': '******', 'email': '*****@*****.**', 'password1': 'hellotest1', 'password2': 'hellotestdiff', 'phone':'1234' },instance = CustomUser.objects.create(username = '******', email = '*****@*****.**', phone='23456')) self.assertFalse(form.is_valid())
def test_userCreationForm_valid(self): form = UserCreationForm(data={ 'username': '******', 'email': '*****@*****.**', 'password1': 'hellotest1', 'password2': 'hellotest1', 'phone':'123' },instance = CustomUser.objects.create(username = '******', email = '*****@*****.**', phone='123345')) self.assertTrue(form.is_valid())
def test_invalid_email(self): data = { 'email': 'testuser', 'password1': 'Pa$sw0rd', 'password2': 'Pa$sw0rd', } form = UserCreationForm(data) self.assertFalse(form.is_valid()) self.assertIn(_('Enter a valid email address.'), form['email'].errors)
def test_if_email_unique(self): form = UserCreationForm(data={ 'username': '******', 'email': '*****@*****.**', 'password1': 'Password1', 'password2': 'Password1', 'phone':'12345' },instance = CustomUser.objects.create(username = '******', email = '*****@*****.**', phone='123455')) self.assertTrue(form.is_valid())
def test_invalid_noPwd(self): #test for no password data = { 'first_name': 'valid', 'last_name': 'user', 'email': '*****@*****.**' } form = UserCreationForm(data) self.assertFalse(form.is_valid())
def test_invalid_noEmail(self): #test for no email data = { 'first_name': 'valid', 'last_name': 'user', 'password1': 'Testcasepwd', 'password2': 'Testcasepwd' } form = UserCreationForm(data) self.assertFalse(form.is_valid())
def valid_user_creation_form(db): return UserCreationForm( data={ 'email': '*****@*****.**', 'first_name': 'first', 'last_name': 'last', 'birth_date': '1900-1-1', 'password1': 'pass123word', 'password2': 'pass123word', })
def test_valid_noFirstLast(self): #tests for valid -- no first and last data = { 'username': '******', 'email': '*****@*****.**', 'password1': 'Testcasepwd', 'password2': 'Testcasepwd' } form = UserCreationForm(data=data) self.assertTrue(form.is_valid())
def test_mismatching_passwords(self): form = UserCreationForm( data={ 'email': '*****@*****.**', 'username': '******', 'password1': 'MISMATCHING_PASSWORDS', 'password2': 'mismatching_passwords' }) self.assertFalse(form.is_valid()) self.assertTrue('password2' not in form.clean())
def test_password_is_not_saved_raw(self): raw_password = '******' data = { 'email': '*****@*****.**', 'password1': raw_password, 'password2': raw_password, } form = UserCreationForm(data) user = form.save() self.assertNotEqual(raw_password, user.password)
def signup(request): if request.method == "POST": user = User() userForm = UserCreationForm(request.POST, instance=user) if userForm.is_valid(): userData = userForm.cleaned_data user.username = userData['username'] user.set_password(userData['password1']) userForm.save() user_auth = authenticate(username=userData['username'], password=userData['password1']) auth_login(request, user_auth) return redirect("/users/images/index") return render(request, template_name="users/register.html", context={"userForm": userForm}) return render(request, template_name="users/register.html", context={"userForm": UserCreationForm()})
def test_password_missmatch(self): """Check that a form with different passwords is not valid.""" data = { 'username': '******', 'email': '*****@*****.**', 'password1': 'test1', 'password2': 'test2' } form = UserCreationForm(data) self.assertFalse(form.is_valid()) self.assertTrue('password2' in form.errors)
def user_new(request): if request.method == 'POST': form = UserCreationForm(request.POST) if form.is_valid(): form.save(verify_email_address=True, request=request) messages.add_message( request, messages.INFO, _("An email has been sent to you. Please " "check it to veiry your email.")) return HttpResponseRedirect('/') else: form = UserCreationForm() context = { 'form': form, } return render_to_response('accounts/user_new.html', context, context_instance=RequestContext(request))
def test_bad_username_provided(self): for unsupported_char in """\/!?@#$%^&*()[]{}<>=+~|:;"'""": form = UserCreationForm( data={ 'email': '*****@*****.**', 'username': '******' + unsupported_char, 'password1': 'A_VERY-$trong.p@assworD', 'password2': 'A_VERY-$trong.p@assworD' }) self.assertFalse(form.is_valid()) self.assertTrue('username' not in form.clean())
def test_invalid_noUser(self): #test for no username data = { 'first_name': 'valid', 'last_name': 'user', 'password1': 'Testcasepwd', 'password2': 'Testcasepwd', 'email': '*****@*****.**' } form = UserCreationForm(data) self.assertFalse(form.is_valid())
def register_seeker(request): if request.method == 'POST': user_creation_form = UserCreationForm(request.POST) seeker_creation_form = SeekerCreationForm(request.POST) hobby_update_form = HobbyForm(request.POST) qualities_form = QualitiesForm(request.POST) if seeker_creation_form.is_valid() and user_creation_form.is_valid(): new_base_user = user_creation_form.save(commit=False) seeker_profile = seeker_creation_form.save(commit=False) hobby_update_form = HobbyForm(request.POST, instance=new_base_user) qualities_form = QualitiesForm(request.POST, instance=new_base_user) if hobby_update_form.is_valid() and qualities_form.is_valid(): new_base_user.save() seeker_profile.base_user = new_base_user seeker_profile.save() hobby_update_form.save(commit=True) qualities_form.save(commit=True) messages.success( request, f"Seeker profile {new_base_user} created successfully! You can log in now." ) return redirect('login') else: hobby_update_form = HobbyForm(request.POST) qualities_form = QualitiesForm(request.POST) else: user_creation_form = UserCreationForm() seeker_creation_form = SeekerCreationForm() hobby_update_form = HobbyForm() qualities_form = QualitiesForm() return render( request, 'seekers/seeker_register.html', { "uform": user_creation_form, "sform": seeker_creation_form, "hform": hobby_update_form, "qform": qualities_form, })