def reset_password_post(token):
    user = User.verify_reset_password_token(token)
    if user:
        return render_template('newpassword.html', token=token)
    else:
        flash('Invalid token')
        return redirect(url_for('admin.login_admin'))

    return redirect(url_for('email.reset_password'))
def reset_password():
    password = request.form.get('password')

    confirm_password = request.form.get('confirm_password')
    token = request.form.get('token')
    user = User.verify_reset_password_token(token)
    if user and password == confirm_password:
        user.password = generate_password_hash(password,
                                               method="sha256",
                                               salt_length=8)
        user.save_data
        flash('Password reset was successful')

    return redirect(url_for('admin.login_admin'))
def login_admin_post():
     email=request.form.get('email')
     password=request.form.get('password')
     token =request.form.get('token')
     remember = True if request.form.get('remember') else False
     user=User.find_user_by_email(email=email)
    
     user1=User.verify_reset_password_token(token)
     print(user1)
     if user1:
         user1.is_confirmed=True
         user1.save_data
 
     if user and check_password_hash(user.password,password):
         login_user(user,remember=remember,force=True)
         return redirect(url_for('admin.show_dashboard'))
     else:
         flash('Please check your login details and try again')
         return redirect(url_for('admin.signup_admin'))
def confirm_user(token):
    user = User.verify_reset_password_token(token)
    print(token)
    print(user)
    if user:
        return redirect(url_for('admin.login_admin', token=token))
    else:
        #send user a confirmation email to confirmed account.
        send_email(
            'Pheme Confirmation Email',
            sender=Configuration.MAIL_DEFAULT_SENDER,
            recipients=[user.email],
            text_body=render_template('/confirm.txt',
                                      title='Account Confirmation Email',
                                      user=user,
                                      token=token),
            html_body=render_template('/confirm.html',
                                      title='Account Confirmation Email',
                                      user=user,
                                      token=token))
        flash(
            'Confirmation expired,Another confirmation message has been sent to your email address'
        )
        return redirect(url_for('admin.login_admin'))
from app import create_app
from config import Configuration
from werkzeug.security import check_password_hash
from Model import User, Account, Task, Project, attachment

app = create_app()

ctx = app.app_context()
ctx.push()
#samples accounts;

# user3=User('mbey1','*****@*****.**','cautions')

print(
    User.verify_reset_password_token(
        'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJyZXNldF9wYXNzd29yZCI6NTksImV4cCI6MTU2NDY2MDQ2Mi41NjcxMDR9.IExvwwTJVoWodG_LfPWHIcNpwjQL1YGESnx_06w0y1Y'
    ))

ctx.pop()