def reset_password(request):
session = DBSession()
guid = request.params.get('guid')
user_id = request.params.get('user_id')
new_password = request.params.get('new_password')
confirm_new_password = request.params.get('confirm_new_password')
if not session.query(PasswordReset).filter(PasswordReset.user_id == user_id).first().validate_guid(guid):
raise HTTPForbidden()
if confirm_new_password != new_password:
params = {"message": "Passwords did not match",
"message_type": "change_password"}
return HTTPFound(location=request.route_url('viewAccount', _query=params))
pword_invalid_check = check_invalid_password(new_password, confirm_new_password)
if pword_invalid_check:
return HTTPFound(location=request.route_url('login', _query=pword_invalid_check))
session.query(User).filter(User.id == user_id).update({User.password: bcrypt.encrypt(new_password)})
session.query(PasswordReset).filter(PasswordReset.user_id == user_id).delete()
params = {"message": "Congratulations! Password successfully changed",
"message_type": "success"}
return HTTPFound(location=request.route_url('login', _query=params))
account_views.py 文件源码
python
阅读 27
收藏 0
点赞 0
评论 0
评论列表
文章目录