def register(city_repo: CityRepo, user_registration: UserRegistration, auth_manager: AuthManager): if current_user.is_authenticated: return redirect(url_for('main.index')) form = RegistrationForm(request.form) form.city.choices = [(city.id, city.name) for city in city_repo.find_all()] if request.method == 'POST' and form.validate(): user = user_registration.register( email=form.email.data, password=form.password.data, first_name=form.first_name.data, last_name=form.last_name.data, interests=form.interests.data, birth_date=form.birth_date.data, gender=form.gender.data, city_id=form.city.data, ) auth_manager.login_user(user) resp = make_response( redirect(url_for('main.profile', profile_id=user.profile.id))) resp.set_cookie('auth_token', jwt.create_token(current_user.profile), max_age=60 * 60 * 24 * 360) return resp return render_template('auth/register.html', form=form)
def register(): form = RegistrationForm() if request.method == 'POST' and form.validate(): user = User.create(username=form.username.data, email=form.email.data) user.setPassword(form.password.data) db.session.commit() flash("Thanks for registering!") return redirect(url_for('auth.login')) return render_template('auth/register.html', title='Register', form=form)
def register(service: RegistrationService): form = RegistrationForm(data=request.get_json()) if not form.validate(): return {'success': False, 'errors': form.errors} user = User() form.populate_obj(user) success, errors = service.register(user) if errors: form.email.errors.append(errors) return {'success': success, 'errors': form.errors}
def test_registration_form(self): # Add user form = RegistrationForm(username="******", email="*****@*****.**", password="******", password2="abc") self.assertTrue(form.validate()) self.add_user(form.username.data, form.email.data, form.password.data) # Add user with same email form = RegistrationForm(username="******", email="*****@*****.**", password="******", password2="abc") self.assertFalse(form.validate()) self.assertEqual(form.errors["email"][0], "Email address already in use.") # Add user with same username form = RegistrationForm(username="******", email="*****@*****.**", password="******", password2="abc") self.assertFalse(form.validate()) self.assertEqual(form.errors["username"][0], "Username already in use.") # Test passwords not equal form = RegistrationForm(username="******", email="*****@*****.**", password="******", password2="xyz") self.assertFalse(form.validate()) self.assertEqual(form.errors["password2"][0], "Field must be equal to password.")
def register(): if current_user.is_authenticated: return redirect(url_for('main.index')) form = RegistrationForm() form_creator = RegistrationFormTeamCreator() if form.submit.data: creator = False elif form_creator.submit_creator.data: creator = True if form.submit.data and form.validate(): user = User(username=form.username.data, email=form.email.data) user.set_password(form.password.data) db.session.add(user) db.session.commit() flash(_('Congratulations, you are now a registered user!'), category='success') return redirect(url_for('auth.login')) if form_creator.submit_creator.data and form_creator.validate(): team = Team(teamname=form_creator.teamname.data) db.session.add(team) user = User(username=form_creator.username.data, email=form_creator.email.data, team=team, online_state=1) user.set_password(form_creator.password.data) user.has_team = True user.is_admin = True user.is_creator = True db.session.add(user) db.session.commit() flash(_( 'Congratulations, you are now a registered user and %(team)s has been created!', team=team.teamname), category='success') return redirect(url_for('auth.login')) if request.method == 'POST': return render_template('auth/register.html', title=_('Register'), form=form, form_creator=form_creator, skip_question=True, creator=creator) else: return render_template('auth/register.html', title=_('Register'), form=form, form_creator=form_creator)
def test_validate_invalid_password_format(self): """Test incorrect data does not validate. Returns: None """ date = datetime.strptime('1996-01-01', '%Y-%m-%d').date() form = RegistrationForm( email='*****@*****.**', username='******', first_name='test', last_name='test', date_of_birth=date, password='******', confirm_password='******', csrf_enabled=False ) self.assertFalse(form.validate())
def test_validate_email_already_registered(self): """Test user can't register when a duplicate email is used. Returns: None """ date = datetime.strptime('1996-01-01', '%Y-%m-%d').date() form = RegistrationForm( email='*****@*****.**', username='******', first_name='test', last_name='test', date_of_birth=date, password='******', confirm_password='******', csrf_enabled=False ) self.assertFalse(form.validate())
def test_validate_success_register_form(self): """Test whether registration works correctly. Returns: None """ date = datetime.strptime('1996-01-01', '%Y-%m-%d').date() form = RegistrationForm( email='*****@*****.**', username='******', first_name='test', last_name='test', date_of_birth=date, password='******', confirm_password='******', csrf_enabled=False ) self.assertTrue(form.validate())
def register(): form = RegistrationForm(request.form) if request.method == 'POST' and form.validate(): user = User() user.name = form.name.data user.username = form.username.data user.email = form.email.data user.password = form.password.data db.session.add(user) db.session.commit() flash('You have successfully registered! You may now login', 'success') # redirect to the login page return redirect(url_for('auth.login')) data = { 'title': 'Register', 'form': form, } return render_template('auth/register.html', **data)
def register(): if current_user.is_authenticated: return redirect(url_for('main.index')) form = RegistrationForm(request.form) if request.method == 'POST' and form.validate(): user = User( username=form.username.data, email=form.email.data, start_date=form.start_date.data, ) user.set_start_balance(form.start_balance.data) user.set_password(form.password.data) db.session.add(user) db.session.commit() row = User.query.filter_by(username=form.username.data).first() transaction = Transaction( user_id=row.id, title="Initial Balance", date=form.start_date.data, description="Initial Balance", income=True, is_recurring=False, ) transaction.set_amount(form.start_balance.data) db.session.add(transaction) db.session.commit() flash('Congratulations, you are now a registered user!') return redirect(url_for('auth.login')) return render_template( 'auth/register.html', title='Register', form=form, )