diff options
| author | Arda Serdar Pektezol <1669855+pektezol@users.noreply.github.com> | 2024-10-09 16:34:12 +0300 |
|---|---|---|
| committer | Arda Serdar Pektezol <1669855+pektezol@users.noreply.github.com> | 2024-10-09 16:34:12 +0300 |
| commit | a7c282ca348c1e8e60559e5c064caee28ba11eec (patch) | |
| tree | 43bd7bdb2bbc80b92b96a14b36c33f0b7df622c9 /frontend/src/pages/Rankings.tsx | |
| parent | Rankings page (diff) | |
| download | lphub-a7c282ca348c1e8e60559e5c064caee28ba11eec.tar.gz lphub-a7c282ca348c1e8e60559e5c064caee28ba11eec.tar.bz2 lphub-a7c282ca348c1e8e60559e5c064caee28ba11eec.zip | |
refactor: so much shit
Diffstat (limited to 'frontend/src/pages/Rankings.tsx')
| -rw-r--r-- | frontend/src/pages/Rankings.tsx | 65 |
1 files changed, 27 insertions, 38 deletions
diff --git a/frontend/src/pages/Rankings.tsx b/frontend/src/pages/Rankings.tsx index 6dbf3d3..9280b02 100644 --- a/frontend/src/pages/Rankings.tsx +++ b/frontend/src/pages/Rankings.tsx | |||
| @@ -22,14 +22,8 @@ const Rankings: React.FC = () => { | |||
| 22 | const [currentLeaderboardType, setCurrentLeaderboardType] = React.useState<RankingCategories>(RankingCategories.rankings_singleplayer); | 22 | const [currentLeaderboardType, setCurrentLeaderboardType] = React.useState<RankingCategories>(RankingCategories.rankings_singleplayer); |
| 23 | const [load, setLoad] = React.useState<boolean>(false); | 23 | const [load, setLoad] = React.useState<boolean>(false); |
| 24 | 24 | ||
| 25 | interface ResponseSTUPID { | ||
| 26 | success: boolean; | ||
| 27 | message: string; | ||
| 28 | data: SteamRanking; | ||
| 29 | } | ||
| 30 | |||
| 31 | const _fetch_rankings = async () => { | 25 | const _fetch_rankings = async () => { |
| 32 | const rankings = await API.get_rankings(); | 26 | const rankings = await API.get_official_rankings(); |
| 33 | setLeaderboardData(rankings); | 27 | setLeaderboardData(rankings); |
| 34 | if (currentLeaderboardType == RankingCategories.rankings_singleplayer) { | 28 | if (currentLeaderboardType == RankingCategories.rankings_singleplayer) { |
| 35 | setCurrentLeaderboard(rankings.rankings_singleplayer) | 29 | setCurrentLeaderboard(rankings.rankings_singleplayer) |
| @@ -43,20 +37,15 @@ const Rankings: React.FC = () => { | |||
| 43 | 37 | ||
| 44 | const __dev_fetch_unofficial_rankings = async () => { | 38 | const __dev_fetch_unofficial_rankings = async () => { |
| 45 | try { | 39 | try { |
| 46 | const response = await fetch("/response.json"); | 40 | const rankings = await API.get_unofficial_rankings(); |
| 47 | const result: ResponseSTUPID = await response.json(); | 41 | setLeaderboardData(rankings); |
| 48 | 42 | if (currentLeaderboardType == RankingCategories.rankings_singleplayer) { | |
| 49 | if (result.success) { | 43 | // console.log(_sort_rankings_steam(unofficialRanking.rankings_singleplayer)) |
| 50 | const unofficialRanking: SteamRanking = result.data; | 44 | setCurrentLeaderboard(rankings.rankings_singleplayer) |
| 51 | setLeaderboardData(unofficialRanking); | 45 | } else if (currentLeaderboardType == RankingCategories.rankings_multiplayer) { |
| 52 | if (currentLeaderboardType == RankingCategories.rankings_singleplayer) { | 46 | setCurrentLeaderboard(rankings.rankings_multiplayer) |
| 53 | // console.log(_sort_rankings_steam(unofficialRanking.rankings_singleplayer)) | 47 | } else { |
| 54 | setCurrentLeaderboard(unofficialRanking.rankings_singleplayer) | 48 | setCurrentLeaderboard(rankings.rankings_overall) |
| 55 | } else if (currentLeaderboardType == RankingCategories.rankings_multiplayer) { | ||
| 56 | setCurrentLeaderboard(unofficialRanking.rankings_multiplayer) | ||
| 57 | } else { | ||
| 58 | setCurrentLeaderboard(unofficialRanking.rankings_overall) | ||
| 59 | } | ||
| 60 | } | 49 | } |
| 61 | } catch (e) { | 50 | } catch (e) { |
| 62 | console.log(e) | 51 | console.log(e) |
| @@ -79,7 +68,7 @@ const Rankings: React.FC = () => { | |||
| 79 | if (leaderboard_type == LeaderboardTypes.official) { | 68 | if (leaderboard_type == LeaderboardTypes.official) { |
| 80 | _fetch_rankings(); | 69 | _fetch_rankings(); |
| 81 | } else { | 70 | } else { |
| 82 | 71 | ||
| 83 | } | 72 | } |
| 84 | } | 73 | } |
| 85 | 74 | ||
| @@ -117,23 +106,23 @@ const Rankings: React.FC = () => { | |||
| 117 | </section> | 106 | </section> |
| 118 | 107 | ||
| 119 | {load ? | 108 | {load ? |
| 120 | <section className="rankings-leaderboard"> | 109 | <section className="rankings-leaderboard"> |
| 121 | <div className="ranks-container"> | 110 | <div className="ranks-container"> |
| 122 | <div className="leaderboard-entry header"> | 111 | <div className="leaderboard-entry header"> |
| 123 | <span>Rank</span> | 112 | <span>Rank</span> |
| 124 | <span>Player</span> | 113 | <span>Player</span> |
| 125 | <span>Portals</span> | 114 | <span>Portals</span> |
| 115 | </div> | ||
| 116 | |||
| 117 | <div className="splitter"></div> | ||
| 118 | |||
| 119 | {currentLeaderboard?.map((curRankingData, i) => { | ||
| 120 | return <RankingEntry currentLeaderboardType={currentLeaderboardType} curRankingData={curRankingData} key={i}></RankingEntry> | ||
| 121 | }) | ||
| 122 | } | ||
| 126 | </div> | 123 | </div> |
| 127 | 124 | </section> | |
| 128 | <div className="splitter"></div> | 125 | : null} |
| 129 | |||
| 130 | {currentLeaderboard?.map((curRankingData, i) => { | ||
| 131 | return <RankingEntry currentLeaderboardType={currentLeaderboardType} curRankingData={curRankingData} key={i}></RankingEntry> | ||
| 132 | }) | ||
| 133 | } | ||
| 134 | </div> | ||
| 135 | </section> | ||
| 136 | : null} | ||
| 137 | </main> | 126 | </main> |
| 138 | ) | 127 | ) |
| 139 | } | 128 | } |