Exemple #1
0
def reset_token(token):

    if current_user.is_authenticated:
        return redirect(url_for('main.home_page'))

    user = User.verify_reset_token(token)

    if user is None:

        flash('That is an invalid or expired token', 'warning')

        return redirect(url_for('users.reset_request'))

    form = ResetPasswordForm()
    if form.validate_on_submit():

        hashed_password = bcrypt.generate_password_hash(
            form.password.data).decode('utf8')

        user.password = hashed_password
        db.session.commit()

        flash('Your password has been updated! You are now able to log in', 'success')
        return redirect(url_for('users.login'))

    return render_template('reset_token.html', title="Reset Password", form=form)
Exemple #2
0
def resetpassword_by_token(token):
    form = ResetPasswordForm()
    if form.validate_on_submit():
        user = User.verify_rest_token(token)  # return User object
        if user is None:
            flash('异常:用户验证失败或操作超时', 'danger')
            return redirect(url_for('users.login'))
        hash_password = bcrypt.generate_password_hash(
            form.password.data).decode('utf-8')
        user.password = hash_password
        db.session.commit()
        flash(f'{user.username} 密码重置成功,请重新登陆', 'primary')
        return redirect(url_for('users.login'))
    return render_template('resetpassword.html', title=f'重置密码', form=form)
Exemple #3
0
def reset_token(token):
    if(current_user.is_authenticated):
        return redirect(url_for('main.home'))
    user = User.verify_reset_token(token)
    if(user is None):
        flash('Invalid/expired token', 'warning')
        return redirect(url_for('users.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('password updated', 'success')
        return redirect(url_for('users.login'))
    return render_template('reset_token.html', title='Reset Password', form=form)
Exemple #4
0
def reset_token(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.home'))
    user = User.verify_reset_token(token)
    if user is None:
        flash("That is an invalid or expired token", "warning")
        return redirect(url_for('users.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"Password changed!!!", "success")
        return redirect(url_for("users.login"))
    return render_template("reset_token.html",
                           title='Reset Password',
                           form=form)
Exemple #5
0
def reset_token(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.home'))
    user = User.verify_reset_token(token)
    if not user:
        flash('That is an invalid or expired token.', 'warning')
        return redirect(url_for('users.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('Your password has been successfully changed.', 'success')
        return redirect(url_for('users.login'))
    return render_template('reset_token.html',
                           form=form,
                           title='Reset Password')
Exemple #6
0
def reset_token(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.index'))
    user = User.verify_reset_token(token)
    if not user:
        flash('That is an invalid token', 'warning')
        return redirect(url_for('users.reset_password'))
    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('Your password was updated! You may now login below', 'success')
        return redirect(url_for('users.login'))
    return render_template('reset_token.html',
                           form=form,
                           title='Reset Password')
Exemple #7
0
def reset_token(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.home'))
    user = User.verify_reset_token(token)
    if not user:
        flash("That is an invalid or expired token", "warning")
        return redirect(url_for("users.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 can log in now!',
              'success')
        return redirect(url_for('users.login'))
    return render_template("reset_token.html",
                           title="Reset Password",
                           form=form)
Exemple #8
0
def reset_token(token):
    if current_user.is_authenticated:
        return redirect(url_for("main.home"))
    user = User.verify_reset_token(token)
    if user is None:
        flash("That is an invalid or exprired token", "warning")
        return redirect(url_for("users.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("Your password has been updated! You are now able to log in",
              "success")
        return redirect(url_for("users.login"))
    return render_template("reset_token.html",
                           title="Reset Password",
                           form=form)
Exemple #9
0
def reset_token(token):
    if current_user.is_authenticated:
        flash(f'Please sign out before!', 'warning')
        return redirect(url_for('main.home'))
    user = User.verify_reset_token(token)
    if user is None:
        flash(f'Token is expired!', 'danger')
        return redirect(url_for('users.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'Password changed!', 'success')
        return redirect(url_for('users.signin'))
    return render_template('reset_token.html',
                           title='Reset Password',
                           form=form)
Exemple #10
0
def reset_token(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.home'))
    user = User.verify_reset_token(token)
    if not user:
        flash('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'Account password is updated for {form.username.data}!',
              'success')
        return redirect(url_for('login'))

    return render_template('reset_token.html',
                           title='Resest Password',
                           form=form)
Exemple #11
0
def reset_token(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.home'))
    # found in the model.py file. the token is found through 'token = user.get_reset_token()'
    user = User.verify_reset_token(token)
    if user in None:  # if we don't get a user
        flash('That is an invalid or expired token', 'warning')
        return redirect(url_for('users.reset_request'))
    form = ResetPasswordForm()  # if the token is valid
    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 now able to log in!',
              'success')
        return redirect(url_for('users.login'))
    return render_template('reset_token.html',
                           title='Reset Password',
                           form=form)
Exemple #12
0
def reset_token(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.home'))
    else:
        user = User.verify_reset_token(token=token)
    if user is None:
        flash(message='Invalid or expired Token Supplied', category='warning')
        return redirect(url_for('users.reset_request'))
    else:
        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'Password has been updated. You can now able to Login',
                  'success')
            return redirect(url_for('users.login'))
        return render_template('reset_token.html',
                               title='Reset Password',
                               form=form)
Exemple #13
0
def reset_password(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.home'))

    user = User.verify_token(token)

    if user is None:
        flash('The token has expired. Please request again', 'warning')
        return redirect(url_for('request_password'))

    form = ResetPasswordForm()

    if form.validate_on_submit():
        hashed_pw = bcrypt.generate_password_hash(
            form.password.data).decode('utf-8')
        user.password = hashed_pw
        db.session.commit()

        flash(f'Password has been updated successfully. You can login now!', 'success')
        return redirect(url_for('users.login'))
    return render_template('reset_pwd.html', form=form, title='Request Password Reset')
def reset_token(token):
    if current_user.is_authenticated:
        return redirect(url_for('main.home'))

    user = User.verify_reset_token(token)
    if user is None:
        flash('Invalid or Expired token!', 'warning')
        return redirect(url_for('users.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()
        # 'success' is bootstrap class alert type
        flash(f'Your password has been updated!', 'success')
        return redirect(url_for('users.login'))

    return render_template('reset_token.html',
                           title='Reset Password',
                           legend='Reset Password',
                           form=form)
Exemple #15
0
def reset_password(token):
    # check if the user is logged in
    if current_user.is_authenticated:
        return redirect(url_for('main.home'))

    # verify the token
    # if the token is invalid/expired redirect them to another password reset
    user = User.verify_reset_token(token)
    if user is None:
        flash('That is an invalid or expired token', 'warning')
        return redirect(url_for('users.reset_request'))

    form = ResetPasswordForm()
    if form.validate_on_submit():
        hashed_pw = bcrypt.generate_password_hash(
            form.password.data).decode('utf-8')
        user.password = hashed_pw
        db.session.commit()
        flash(f'Your password has been updated {form.username.data}!',
              'success')
        return redirect(url_for('users.login'))
    return render_template('reset_password.html',
                           title='Reset Password',
                           form=form)