diff --git a/files/routes/admin.py b/files/routes/admin.py index d493ad6b8..8f21b7a40 100644 --- a/files/routes/admin.py +++ b/files/routes/admin.py @@ -24,12 +24,16 @@ SITE_NAME = environ.get("SITE_NAME", "").strip() def votes2(v, id): try: id = int(id) except: abort(400) - votes = g.db.query(Vote.user_id).join(Submission, Vote.submission_id==Submission.id).filter(Vote.vote_type==1, Submission.author_id==id).group_by(Vote.user_id).order_by(func.count(Vote.user_id).desc()).limit(25).all() + votes = g.db.query(Vote.user_id, func.count(Vote.user_id)).join(Submission, Vote.submission_id==Submission.id).filter(Vote.vote_type==1, Submission.author_id==id).group_by(Vote.user_id).order_by(func.count(Vote.user_id).desc()).limit(25).all() voters=[x[0] for x in votes] + counts=[x[1] for x in votes] users = g.db.query(User.id, User.username).filter(User.id.in_(voters)).all() users = [x[1] for x in sorted(users, key=lambda x: voters.index(x[0]))] - return render_template("upvoters.html", users=users) + users2 = [] + for idx, user in enumerate(users): users2.append((user, counts[idx])) + + return render_template("upvoters.html", v=v, users=users2) @app.get("/name//") diff --git a/files/templates/upvoters.html b/files/templates/upvoters.html index bd1a6e363..35e96756e 100644 --- a/files/templates/upvoters.html +++ b/files/templates/upvoters.html @@ -1,18 +1,23 @@ {% extends "default.html" %} {% block content %} +
+
 	
+
+ {% for user in users %} - + + {% endfor %}
# NameUpvotes
{{loop.index}}{{user}}{{user[0]}}{{user[1]}}