From 0a05562f8cd604a440dfc7fde90a6f3253b907cb Mon Sep 17 00:00:00 2001 From: TLSM Date: Sat, 24 Sep 2022 14:11:48 -0400 Subject: [PATCH] Order sub exile/etc listings reverse chronological. --- files/routes/subs.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/files/routes/subs.py b/files/routes/subs.py index 1893616c5a..33b8f5b3b2 100644 --- a/files/routes/subs.py +++ b/files/routes/subs.py @@ -5,6 +5,7 @@ from files.helpers.get import * from files.helpers.regex import * from files.classes import * from .front import frontlist +from sqlalchemy import nullslast import tldextract @app.post("/exile/post/") @@ -197,7 +198,9 @@ def sub_exilees(v, sub): sub = g.db.query(Sub).filter_by(name=sub.strip().lower()).one_or_none() if not sub: abort(404) - users = g.db.query(User, Exile).join(Exile, Exile.user_id==User.id).filter_by(sub=sub.name).all() + users = g.db.query(User, Exile).join(Exile, Exile.user_id==User.id) \ + .filter_by(sub=sub.name) \ + .order_by(nullslast(Exile.created_utc.desc()), User.username).all() return render_template("sub/exilees.html", v=v, sub=sub, users=users) @@ -208,20 +211,23 @@ def sub_blockers(v, sub): sub = g.db.query(Sub).filter_by(name=sub.strip().lower()).one_or_none() if not sub: abort(404) - users = g.db.query(User).join(SubBlock).filter_by(sub=sub.name).all() + users = g.db.query(User).join(SubBlock) \ + .filter_by(sub=sub.name) \ + .order_by(nullslast(SubBlock.created_utc.desc()), User.username).all() return render_template("sub/blockers.html", v=v, sub=sub, users=users, verb="blocking") + @app.get("/h//followers") @auth_required def sub_followers(v, sub): sub = g.db.query(Sub).filter_by(name=sub.strip().lower()).one_or_none() if not sub: abort(404) - users = g.db.query(User) \ - .join(SubSubscription) \ - .filter_by(sub=sub.name).all() + users = g.db.query(User).join(SubSubscription) \ + .filter_by(sub=sub.name) \ + .order_by(nullslast(SubSubscription.created_utc.desc()), User.username).all() return render_template("sub/blockers.html", v=v, sub=sub, users=users, verb="following")