From 210118bf4d8becbb89ab5efc9c84064713168eb3 Mon Sep 17 00:00:00 2001 From: Jorge Vargas Date: Fri, 21 Mar 2025 14:19:27 -0600 Subject: [PATCH] Error handling on donator check page --- messages/en.json | 4 +++- src/pages/donator/check.astro | 7 +++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/messages/en.json b/messages/en.json index 97dbcd9..c400032 100644 --- a/messages/en.json +++ b/messages/en.json @@ -73,5 +73,7 @@ "alreadyDonator": "You are already a donator!", "discordNeeded": "You need to link your Discord account to access this page", "discordRoleNeeded": "You need the Donator Discord role to access this page", - "addedDonator": "Added donator benefits to your account!" + "addedDonator": "Added donator benefits to your account!", + "errorDonatorCheck": "Something went wrong when checking your Discord donator status. Please try again later.", + "discordRateLimit": "{message} Retry after {retry_after} seconds." } diff --git a/src/pages/donator/check.astro b/src/pages/donator/check.astro index 8d085db..63ca968 100644 --- a/src/pages/donator/check.astro +++ b/src/pages/donator/check.astro @@ -29,6 +29,13 @@ async function getMessage() { } }) + if (memberInfoRes.status == 429) { + const { message, retry_after }: { message: string; retry_after: number } = await memberInfoRes.json() + return m.discordRateLimit({ message, retry_after }) + } else if (memberInfoRes.status != 200) { + return m.errorDonatorCheck + } + const memberInfo: { roles: string[] } = await memberInfoRes.json() const isDiscordDonator = memberInfo.roles.includes(DISCORD_DONATOR_ID)