feat: settings password change, migrate desktop client with hub activation/report
This commit is contained in:
+22
-1
@@ -50,7 +50,7 @@ def register_routes(app: Flask) -> None:
|
||||
def login_post():
|
||||
user = (request.form.get("username") or "").strip()
|
||||
pwd = request.form.get("password") or ""
|
||||
if user == Config.ADMIN_USER and pwd == Config.ADMIN_PASSWORD:
|
||||
if database.verify_admin(user, pwd):
|
||||
session["user"] = user
|
||||
return redirect(request.args.get("next") or url_for("dashboard"))
|
||||
flash("用户名或密码错误", "error")
|
||||
@@ -61,6 +61,27 @@ def register_routes(app: Flask) -> None:
|
||||
session.clear()
|
||||
return redirect(url_for("login"))
|
||||
|
||||
@app.get("/settings")
|
||||
@login_required
|
||||
def settings_page():
|
||||
return render_template("settings.html")
|
||||
|
||||
@app.post("/settings/password")
|
||||
@login_required
|
||||
def settings_password():
|
||||
old_pwd = request.form.get("old_password") or ""
|
||||
new_pwd = request.form.get("new_password") or ""
|
||||
new_pwd2 = request.form.get("new_password2") or ""
|
||||
if new_pwd != new_pwd2:
|
||||
flash("两次输入的新密码不一致", "error")
|
||||
return redirect(url_for("settings_page"))
|
||||
try:
|
||||
database.change_admin_password(old_pwd, new_pwd)
|
||||
flash("密码已更新,请牢记新密码", "ok")
|
||||
except ValueError as exc:
|
||||
flash(str(exc), "error")
|
||||
return redirect(url_for("settings_page"))
|
||||
|
||||
@app.get("/")
|
||||
@login_required
|
||||
def dashboard():
|
||||
|
||||
Reference in New Issue
Block a user