From 19fa04e44295585f7ac72c24eeef32b358136e37 Mon Sep 17 00:00:00 2001 From: Arman Date: Mon, 3 Jun 2024 12:23:15 +0200 Subject: [PATCH] fix: redirection logic --- src/routes/+layout.svelte | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 1da2b87eb..bc0cbf8f4 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -15,6 +15,7 @@ import Consent from '$lib/components/consent.svelte'; import { sdk } from '$lib/stores/sdk'; import type { Models } from '@appwrite.io/console'; + import { campaigns } from '$lib/stores/campaigns'; onMount(async () => { // handle sources @@ -75,6 +76,21 @@ const pathname = $page.url.pathname; const user = $page.data.account as Models.User>; + const code = $page.url.searchParams.get('code'); + if (code) { + try { + const couponData = await sdk.forConsole.billing.getCoupon(code); + if (couponData?.campaign && campaigns.has(couponData.campaign)) { + if (user) { + goto(`${base}/console/apply-credit?code=${code}`); + return; + } + } + } catch (error) { + // Do nothing + } + } + if (shouldRedirect(pathname, authenticationRoutes)) { if (user?.$id) { if (shouldRedirect(pathname, acceptedAuthenticatedRoutes)) {