diff --git a/public/script/generateSvg.js b/public/script/generateSvg.js
index b6cb9805..c77a9fbb 100644
--- a/public/script/generateSvg.js
+++ b/public/script/generateSvg.js
@@ -101,6 +101,44 @@ async function getSvg(userData, theme, badge, leaderBoards, personalbests) {
userData.allTimeLbs.time["60"]["english"],
);
+ const ordinalNumber = (rank) => {
+ if (rank === undefined || rank === null) return "";
+ if (rank % 10 === 1) return "st";
+ if (rank % 10 === 2) return "nd";
+ if (rank % 10 === 3) return "rd";
+ return "th";
+ };
+
+ const allTimeLbs = userData.allTimeLbs;
+ let rank15 = "-";
+ let rank60 = "-";
+ let ordinalNumber15 = "";
+ let ordinalNumber60 = "";
+
+ try {
+ if (allTimeLbs.time["15"]["english"]["rank"] === undefined || allTimeLbs.time["15"]["english"]["rank"] === null) {
+ rank15 = "-";
+ } else {
+ rank15 = allTimeLbs.time["15"]["english"]["rank"];
+ }
+ if (allTimeLbs.time["60"]["english"]["rank"] === undefined || allTimeLbs.time["60"]["english"]["rank"] === null) {
+ rank60 = "-";
+ } else {
+ rank60 = allTimeLbs.time["60"]["english"]["rank"];
+ }
+ ordinalNumber15 = ordinalNumber(allTimeLbs.time["15"]["english"]["rank"]);
+ ordinalNumber60 = ordinalNumber(allTimeLbs.time["60"]["english"]["rank"]);
+ } catch (e) {
+ console.log(e);
+ console.log(userData)
+ console.log(userData.allTimeLbs.time)
+ rank15 = "-";
+ rank60 = "-";
+ ordinalNumber15 = "";
+ ordinalNumber60 = "";
+ }
+
+
leaderBoardHTML = `
- ${
- userData.allTimeLbs.time["15"][
- "english"
- ].hasOwnProperty("rank")
- ? userData.allTimeLbs.time[
- "15"
- ]["english"]["rank"]
- : "-"
- }
+ ${rank15}
- ${
- userData.allTimeLbs.time["15"][
- "english"
- ].hasOwnProperty("rank") &&
- userData.allTimeLbs.time["15"][
- "english"
- ]["rank"] %
- 10 ==
- 1
- ? "st"
- : ""
- }
- ${
- userData.allTimeLbs.time["15"][
- "english"
- ].hasOwnProperty("rank") &&
- userData.allTimeLbs.time["15"][
- "english"
- ]["rank"] %
- 10 ==
- 2
- ? "nd"
- : ""
- }
- ${
- userData.allTimeLbs.time["15"][
- "english"
- ].hasOwnProperty("rank") &&
- userData.allTimeLbs.time["15"][
- "english"
- ]["rank"] %
- 10 ==
- 3
- ? "rd"
- : ""
- }
- ${
- userData.allTimeLbs.time["15"][
- "english"
- ].hasOwnProperty("rank") &&
- (userData.allTimeLbs.time["15"][
- "english"
- ]["rank"] %
- 10 >
- 3 ||
- userData.allTimeLbs.time["15"][
- "english"
- ]["rank"] %
- 10 ==
- 0)
- ? "th"
- : ""
- }
+ ${ordinalNumber15}
@@ -209,71 +187,11 @@ async function getSvg(userData, theme, badge, leaderBoards, personalbests) {
- ${
- userData.allTimeLbs.time["60"][
- "english"
- ].hasOwnProperty("rank")
- ? userData.allTimeLbs.time[
- "60"
- ]["english"]["rank"]
- : "-"
- }
+ ${rank60}
- ${
- userData.allTimeLbs.time["60"][
- "english"
- ].hasOwnProperty("rank") &&
- userData.allTimeLbs.time["60"][
- "english"
- ]["rank"] %
- 10 ==
- 1
- ? "st"
- : ""
- }
- ${
- userData.allTimeLbs.time["60"][
- "english"
- ].hasOwnProperty("rank") &&
- userData.allTimeLbs.time["60"][
- "english"
- ]["rank"] %
- 10 ==
- 2
- ? "nd"
- : ""
- }
- ${
- userData.allTimeLbs.time["60"][
- "english"
- ].hasOwnProperty("rank") &&
- userData.allTimeLbs.time["60"][
- "english"
- ]["rank"] %
- 10 ==
- 3
- ? "rd"
- : ""
- }
- ${
- userData.allTimeLbs.time["60"][
- "english"
- ].hasOwnProperty("rank") &&
- (userData.allTimeLbs.time["60"][
- "english"
- ]["rank"] %
- 10 >
- 3 ||
- userData.allTimeLbs.time["60"][
- "english"
- ]["rank"] %
- 10 ==
- 0)
- ? "th"
- : ""
- }
+ ${ordinalNumber60}