From 0ed4d81da22a0c535b3762815132d45c27280052 Mon Sep 17 00:00:00 2001 From: Ozzie Isaacs Date: Mon, 6 Apr 2026 15:12:09 +0200 Subject: [PATCH] Better error handling on order parameter for sorting of user and books table --- cps/admin.py | 3 ++- cps/web.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/cps/admin.py b/cps/admin.py index 0e0a61018..1a1b1389c 100644 --- a/cps/admin.py +++ b/cps/admin.py @@ -349,8 +349,9 @@ def list_users(): if sort not in ub.User.__table__.columns.keys(): sort = "id" order = request.args.get("order", "").lower() - if sort != "state" and order: + if not order in ["asc", "desc"]: + order = "asc" order = text(sort + " " + order) elif not state: order = ub.User.id.asc() diff --git a/cps/web.py b/cps/web.py index f65728ef1..cc261b8dd 100644 --- a/cps/web.py +++ b/cps/web.py @@ -842,7 +842,8 @@ def list_books(): order = request.args.get("order", "").lower() state = None join = tuple() - + if not order in ["asc", "desc", ""]: + order = "asc" if sort_param == "state": state = json.loads(request.args.get("state", "[]")) elif sort_param == "tags":