suchwow/suchwow/routes/leaderboard.py

31 lines
892 B
Python
Raw Normal View History

2021-05-05 09:50:54 +01:00
from datetime import datetime, timedelta
2020-09-16 19:32:16 +01:00
from os import path
2021-11-08 09:04:58 +00:00
from flask import render_template, Blueprint, request, session
2020-09-16 19:32:16 +01:00
from flask import send_from_directory, redirect, url_for, current_app
from werkzeug.utils import secure_filename
from suchwow import wownero
from suchwow.models import Post
from suchwow.utils.helpers import rw_cache, get_top_posters, get_top_posts
2020-09-16 19:32:16 +01:00
bp = Blueprint("leaderboard", "leaderboard")
2021-05-05 09:50:54 +01:00
@bp.route("/leaderboards/top_posters")
def top_posters():
top_posters = get_top_posters()
2020-09-16 19:32:16 +01:00
return render_template("leaderboard.html", posters=top_posters)
2021-05-05 09:50:54 +01:00
@bp.route("/leaderboards/top_posts")
def top_posts():
days = request.args.get('days', 1)
try:
days = int(days)
except:
days = 1
if days not in [1, 3, 7, 30]:
days = 7
posts = get_top_posts(days)
2021-05-05 09:50:54 +01:00
return render_template("post/top.html", posts=posts, days=days)