def reset_token(): form = ResetPasswordForm() if form.validate_on_submit(): User.objects(email=form.email.data).update(password = form.password.data) flash('Your password has been updated') return render_template('reset-token.html', title='Reset Password', form=form)
def register(): form = RegistrationForm() ''' 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=form.password.data) user.save() flash(f'Thanks {form.username.data}! Your account has been created, you are now able to log in.', 'success') return redirect(url_for('login')) return render_template('register.html', title='Register', form=form)
def reset_request(): form = RequestResetForm() if form.validate_on_submit(): user = User.objects(email=form.email.data).first() send_reset_email(user) flash('An email has been sent to your email address.') return redirect(url_for('login')) return render_template('reset-request.html', title='Reset Password', form=form)
def login(): ''' if current_user.is_authenticated: return redirect(url_for('home')) ''' form = LoginForm() if form.validate_on_submit(): user = User.objects(email=form.email.data).first() if user.password == form.password.data: login_user(user) return redirect(url_for('home')) else: flash('Login Unsuccessful. Please check email and password', 'danger') return render_template('login.html', title='Login', form=form)
def validate_email(self, email): user = User.objects(email=email.data).first() if user is None: raise ValidationError('There is no account for that email.')
def validate_email(self, email): user = User.objects(email=email.data).first() if user: raise ValidationError('That email is already taken.')
def validate_username(self, username): user = User.objects(username=username.data).first() if user: raise ValidationError('That username is already taken.')