aboutsummaryrefslogtreecommitdiff
path: root/frontend/src/pages/Rankings.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'frontend/src/pages/Rankings.tsx')
-rw-r--r--frontend/src/pages/Rankings.tsx65
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}