From e880adf0ffb3191a79250229f15bd44af92b6104 Mon Sep 17 00:00:00 2001 From: KittenTM Date: Sun, 22 Mar 2026 06:39:07 +0100 Subject: [PATCH] rewrite: fix is_top_100_fes flag to properly return correct value --- routes/Ranking.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/routes/Ranking.py b/routes/Ranking.py index 2e39f8b..e016e0e 100644 --- a/routes/Ranking.py +++ b/routes/Ranking.py @@ -21,9 +21,8 @@ async def get_leaderboard(db: DBSession = Depends(get_db)): .limit(100) .all() ) - top_100_pids = {row for row in top_100_query} - modes = [0, 1, 2] - + top_100_tuples = set(top_100_query) + modes = {0, 1, 2} leaderboard = {} for mode in modes: @@ -37,6 +36,8 @@ async def get_leaderboard(db: DBSession = Depends(get_db)): mode_results = [] for player in top_players: + player_pid_tuple = (player.PId,) + is_top_100 = player_pid_tuple in top_100_tuples mode_results.append({ "PId": player.PId, "MiiName": player.MiiName, @@ -45,7 +46,7 @@ async def get_leaderboard(db: DBSession = Depends(get_db)): "LoseSum": player.LoseSum, "RankingScore": round(player.RankingScore, 2), "FesPower": player.FesPower, - "is_top_100_fes": player.PId in top_100_pids + "is_top_100_fes": is_top_100 }) leaderboard[f"mode_{mode}"] = mode_results @@ -53,5 +54,5 @@ async def get_leaderboard(db: DBSession = Depends(get_db)): return leaderboard except Exception as e: - print(f"Error fetching leaderboard: {e}") + print(f"Error: {e}") return {"error": str(e)} \ No newline at end of file