From 5d10b28b20f2c55fd06866f802f69babf4a7e729 Mon Sep 17 00:00:00 2001 From: notmd <33456881+notmd@users.noreply.github.com> Date: Tue, 7 Feb 2023 14:17:21 +0700 Subject: [PATCH] fix leaderboard when current user doesn't have stats (#1289) --- website/src/components/LeaderboardTable/LeaderboardTable.tsx | 4 ++-- website/src/pages/api/leaderboard.ts | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/website/src/components/LeaderboardTable/LeaderboardTable.tsx b/website/src/components/LeaderboardTable/LeaderboardTable.tsx index b775be8d..8451be9e 100644 --- a/website/src/components/LeaderboardTable/LeaderboardTable.tsx +++ b/website/src/components/LeaderboardTable/LeaderboardTable.tsx @@ -34,7 +34,7 @@ export const LeaderboardTable = ({ data: reply, isLoading, error, - } = useSWRImmutable( + } = useSWRImmutable( `/api/leaderboard?time_frame=${timeFrame}&limit=${limit}&includeUserStats=${!hideCurrentUserRanking}`, get ); @@ -79,7 +79,7 @@ export const LeaderboardTable = ({ const start = (page - 1) * rowPerPage; const end = start + rowPerPage; const leaderBoardEntities = reply.leaderboard.slice(start, end); - if (hideCurrentUserRanking) { + if (hideCurrentUserRanking || !reply.user_stats_window) { return leaderBoardEntities; } const userStatsWindow: WindowLeaderboardEntity[] = reply.user_stats_window; diff --git a/website/src/pages/api/leaderboard.ts b/website/src/pages/api/leaderboard.ts index 42f74c3d..8a38a82f 100644 --- a/website/src/pages/api/leaderboard.ts +++ b/website/src/pages/api/leaderboard.ts @@ -29,7 +29,7 @@ const handler = withoutRole("banned", async (req, res, token) => { res.status(200).json({ ...leaderboard, - user_stats_window: user_stats.leaderboard.map((stats) => ({ ...stats, is_window: true })), + user_stats_window: user_stats?.leaderboard.map((stats) => ({ ...stats, is_window: true })), }); });