def forgot_password(): form = SendForgotPasswordForm() if form.validate_on_submit(): user = User.query.filter_by(email=form.email.data).first() user_forgot_password = UserForgotPassword.query.filter_by(user_id=user.id).first() if not user_forgot_password: user_forgot_password = UserForgotPassword(user) else: user_forgot_password.refresh() db.session.add(user_forgot_password) db.session.commit() token = user_forgot_password.token.encode('base64').strip().replace('=', '_') result, message = send_email( 'Framgia Level Checker - Reset Password', app.config['MAIL_SENDERS']['admin'], [user.email], 'reset_password', dict(token=token) ) if not result: form.email.errors.append('Error: ' + message) else: flash('Reset password mail sent.', category='success') return render_template('user/reset_password_sent.html', user=user) return render_template('user/forgot_password.html', form=form)
def forgot_password(): form = SendForgotPasswordForm() if form.validate_on_submit(): user = User.query.filter_by(email=form.email.data).first() if not user.reset_password_token: user.refresh_password_token() token = user.reset_password_token.encode('base64').strip().replace( '=', '_') send_email('Framgia Code Contest - Reset Password', app.config['MAIL_SENDERS']['admin'], [user.email], 'reset_password', dict(token=token)) flash('Reset password email sent !', category='success') user.log_sent_password_token() db.session.add(user) db.session.commit() return render_template('user/reset_password_sent.html', user=user) return render_template('user/forgot_password.html', form=form)
def forgot_password(): form = SendForgotPasswordForm() if form.validate_on_submit(): user = User.query.filter_by(email=form.email.data).first() if not user.reset_password_token: user.refresh_password_token() token = user.reset_password_token.encode('base64').strip().replace('=', '_') send_email( 'Framgia Code Contest - Reset Password', app.config['MAIL_SENDERS']['admin'], [user.email], 'reset_password', dict(token=token) ) flash('Reset password email sent !', category='success') user.log_sent_password_token() db.session.add(user) db.session.commit() return render_template('user/reset_password_sent.html', user=user) return render_template('user/forgot_password.html', form=form)