What happened?
The leaderboard page has Global, Monthly, Organization, and Friends tabs. Clicking between them looks like it should change what you see, but handleTabChange in src/app/(app)/leaderboard/leaderboard-content.tsx (line 78) only calls setActiveTab(tab), it never refetches data or touches the URL.
getLeaderboard in src/app/actions/leaderboard.ts already supports global, cohort, language, and tag scopes server side, but the page only ever passes scope=global and never reads the active tab back out into a query param. So switching tabs just changes which button looks selected while the same global top 100 list stays on screen underneath it.
Steps to Reproduce
- Open the leaderboard
- Click "Monthly", "Organization", or "Friends"
- The list doesn't change
Expected Behavior
Clicking a tab should update the URL (or otherwise trigger a refetch) and show data scoped to that tab.
Where does this occur?
Contributor Dashboard (leaderboard)
Additional Context
Worth noting "Friends" isn't even a supported scope server side yet, only global, cohort, language, tag exist in getLeaderboard. That part may need backend work too, not just wiring up the click handler.
What happened?
The leaderboard page has Global, Monthly, Organization, and Friends tabs. Clicking between them looks like it should change what you see, but
handleTabChangeinsrc/app/(app)/leaderboard/leaderboard-content.tsx(line 78) only callssetActiveTab(tab), it never refetches data or touches the URL.getLeaderboardinsrc/app/actions/leaderboard.tsalready supportsglobal,cohort,language, andtagscopes server side, but the page only ever passesscope=globaland never reads the active tab back out into a query param. So switching tabs just changes which button looks selected while the same global top 100 list stays on screen underneath it.Steps to Reproduce
Expected Behavior
Clicking a tab should update the URL (or otherwise trigger a refetch) and show data scoped to that tab.
Where does this occur?
Contributor Dashboard (leaderboard)
Additional Context
Worth noting "Friends" isn't even a supported scope server side yet, only
global,cohort,language,tagexist ingetLeaderboard. That part may need backend work too, not just wiring up the click handler.