main.py 文件源码

python
阅读 22 收藏 0 点赞 0 评论 0

项目:pizza-auth 作者: xxpizzaxx 项目源码 文件源码
def update_account():
    email = request.form["email"]
    oldpassword = request.form["oldpassword"]
    api_id = request.form["api_id"]
    api_key = request.form["api_key"]
    update_needed = False
    if api_id != current_user.keyID[0] or api_key != current_user.vCode[0]:
        update_needed = True
    if not ldaptools.check_credentials(current_user.get_id(), oldpassword):
        flash("You must confirm your old password to update your account.", "danger")
        return redirect("/account")
    try:
        if all(x in request.form for x in ["password", "password_confirm", "oldpassword"]):
            if request.form["password"] != request.form["password_confirm"]:
                flash("Password confirmation mismatch.", "danger")
                return redirect("/account")
            result = ldaptools.modattr(current_user.get_id(), MOD_REPLACE, "userPassword", ldaptools.makeSecret(request.form["password"]))
            assert(result)
        result = ldaptools.modattr(current_user.get_id(), MOD_REPLACE, "email", email)
        assert(result)
        if "api_id" in request.form:
            result = ldaptools.modattr(current_user.get_id(), MOD_REPLACE, "keyID", api_id)
            assert(result)
            result = ldaptools.modattr(current_user.get_id(), MOD_REPLACE, "vCode", api_key)
            assert(result)
        flash("Account updated", "success")
    except Exception:
        flash("Update failed", "danger")
    if update_needed is True:
        update_characters([current_user.get_id()])
    app.logger.info('User account {0} infos changed'.format(current_user.get_id()))
    return redirect("/account")
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号