This commit is contained in:
Aevann1 2021-11-16 01:13:29 +02:00
parent 9dd3eb89ea
commit e1a1b5243d
7 changed files with 77 additions and 29 deletions

View file

@ -34,7 +34,7 @@ def upvoters(v, username):
users = sorted(users2, key=lambda x: x[1], reverse=True)[:25]
return render_template("upvoters.html", v=v, users=users, username=username, name='Up', name2='simps')
return render_template("voters.html", v=v, users=users, username=username, name='Up', name2='@{v.username} biggest simps')
@app.get("/@<username>/downvoters")
@auth_desired
@ -53,7 +53,45 @@ def downvoters(v, username):
users = sorted(users2, key=lambda x: x[1], reverse=True)[:25]
return render_template("upvoters.html", v=v, users=users, username=username, name='Down', name2='haters')
return render_template("voters.html", v=v, users=users, username=username, name='Down', name2='@{v.username} biggest haters')
@app.get("/@<username>/upvoting")
@auth_desired
def upvoting(v, username):
id = get_user(username).id
votes = g.db.query(Submission.author_id, func.count(Submission.author_id)).join(Vote, Vote.submission_id==Submission.id).filter(Vote.vote_type==1, Vote.user_id==id).group_by(Submission.author_id).order_by(func.count(Submission.author_id).desc()).limit(25).all()
votes2 = g.db.query(Comment.author_id, func.count(Comment.author_id)).join(CommentVote, CommentVote.comment_id==Comment.id).filter(CommentVote.vote_type==1, CommentVote.user_id==id).group_by(Comment.author_id).order_by(func.count(Comment.author_id).desc()).limit(25).all()
votes = Counter(dict(votes)) + Counter(dict(votes2))
users = g.db.query(User).filter(User.id.in_(votes.keys())).all()
users2 = []
for user in users: users2.append((user, votes[user.id]))
users = sorted(users2, key=lambda x: x[1], reverse=True)[:25]
return render_template("voters.html", v=v, users=users, username=username, name='Up', name2=f'Who @{v.username} simps for')
@app.get("/@<username>/downvoting")
@auth_desired
def downvoting(v, username):
id = get_user(username).id
votes = g.db.query(Submission.author_id, func.count(Submission.author_id)).join(Vote, Vote.submission_id==Submission.id).filter(Vote.vote_type==-1, Vote.user_id==id).group_by(Submission.author_id).order_by(func.count(Submission.author_id).desc()).limit(25).all()
votes2 = g.db.query(Comment.author_id, func.count(Comment.author_id)).join(CommentVote, CommentVote.comment_id==Comment.id).filter(CommentVote.vote_type==-1, CommentVote.user_id==id).group_by(Comment.author_id).order_by(func.count(Comment.author_id).desc()).limit(25).all()
votes = Counter(dict(votes)) + Counter(dict(votes2))
users = g.db.query(User).filter(User.id.in_(votes.keys())).all()
users2 = []
for user in users: users2.append((user, votes[user.id]))
users = sorted(users2, key=lambda x: x[1], reverse=True)[:25]
return render_template("voters.html", v=v, users=users, username=username, name='Down', name2=f'Who @{v.username} hates')
@app.post("/pay_rent")
@limiter.limit("1/second")