diff --git a/drama/classes/user.py b/drama/classes/user.py index b5ca9dee2..ead1c7c41 100644 --- a/drama/classes/user.py +++ b/drama/classes/user.py @@ -326,11 +326,13 @@ class User(Base, Stndrd, Age_times): Comment.deleted_utc == 0).count() @property + @lazy def post_count(self): return self.submissions.filter_by(is_banned=False, deleted_utc=0).count() @property + @lazy def comment_count(self): return self.comments.filter(Comment.parent_submission != None).filter_by(is_banned=False, deleted_utc=0).count() diff --git a/drama/routes/front.py b/drama/routes/front.py index 930cb9e6b..81e42e5e4 100644 --- a/drama/routes/front.py +++ b/drama/routes/front.py @@ -182,7 +182,8 @@ def frontlist(v=None, sort="hot", page=1,t="all", ids_only=True, filter_words='' def front_all(v): if v and v.is_banned and not v.unban_utc: return render_template("seized.html") - page = int(request.args.get("page") or 1) + try: page = int(request.args.get("page") or 1) + except: abort(400) # prevent invalid paging page = max(page, 1) diff --git a/drama/templates/leaderboard.html b/drama/templates/leaderboard.html index 547849b92..98847ad2d 100644 --- a/drama/templates/leaderboard.html +++ b/drama/templates/leaderboard.html @@ -47,4 +47,33 @@ {% endfor %} +
+
+
+
+
Top 10 dramatards by post count
+
+
+
+
+ + + + + + + + +{% for user in users3 %} + + + + + +{% endfor %} +
#NamePost count
{{users3.index(user)+1}}{{user.username}}{{user.post_count}}
+
+
+
+
{% endblock %} \ No newline at end of file