Пример #1
0
def register():
	if current_user.is_authenticated:
		return redirect(url_for('home'))
	form = RegistrationForm()
	if form.validate_on_submit():
		hashed_password = bcrypt.generate_password_hash(form.password.data).decode('utf-8')
		user = User(username=form.username.data, email=form.email.data, password=hashed_password)
		db.session.add(user)
		db.session.commit()
		flash(f'Your account has been created as {form.username.data}!', 'success')
		return redirect(url_for('home'))
	return render_template("register.html", title = 'Register', form=form)
Пример #2
0
def reset_token(token):
	if current_user.is_authenticated:	# make sure that the user should log out before reset password
		return redirect(url_for('home'))
	user = User.verify_reset_token(token)	#	if the token is valid(= not expired) the function returns its payload(=user)
	if user is None:
		flash('That is an invalid or expired token', 'warning')
		return redirect(url_for('reset_request'))
	form = ResetPasswordForm()
	if form.validate_on_submit():
		hashed_password = bcrypt.generate_password_hash(form.password.data).decode('utf-8')
		user.password = hashed_password
		db.session.commit()
		flash(f'Your password has been updated! You are able to log in', 'success')
		return redirect(url_for('login'))
	return render_template('reset_token.html', title = 'Reset Password', form = form)