From 1ebf0f0269152a3aee696b8e80c01b68aca2b070 Mon Sep 17 00:00:00 2001 From: Isaac - The456 Date: Fri, 25 Apr 2025 15:20:38 +0100 Subject: [PATCH] Don't clobber browser history / infinite redirect loop. Its not nice when redirects prevent you from using the back button, instead, lets prefer to replace state when the user cannot return via the back button. --- web/src/routes/+page.svelte | 4 ++-- web/src/routes/github-callback/+page.svelte | 4 ++-- web/src/routes/login/+page.svelte | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/web/src/routes/+page.svelte b/web/src/routes/+page.svelte index 2e47f44..c4b1efb 100644 --- a/web/src/routes/+page.svelte +++ b/web/src/routes/+page.svelte @@ -45,7 +45,7 @@ token.value = localStorage.getItem("token"); if (token.value === null) { - await goto("/login"); + await goto("/login", { replaceState: true }); return; } @@ -118,7 +118,7 @@ onclick={() => { localStorage.removeItem("token"); token.value = null; - goto("/login"); + goto("/login", { replaceState: true }); }} > Logout diff --git a/web/src/routes/github-callback/+page.svelte b/web/src/routes/github-callback/+page.svelte index 844ff5e..94449bd 100644 --- a/web/src/routes/github-callback/+page.svelte +++ b/web/src/routes/github-callback/+page.svelte @@ -17,9 +17,9 @@ const authReferrer = localStorage.getItem("authReferrer"); if (authReferrer) { localStorage.removeItem("authReferrer"); - await goto(authReferrer); + await goto(authReferrer, { replaceState: true }); } else { - await goto("/"); + await goto("/", { replaceState: true }); } } diff --git a/web/src/routes/login/+page.svelte b/web/src/routes/login/+page.svelte index 7579db4..3a83ce2 100644 --- a/web/src/routes/login/+page.svelte +++ b/web/src/routes/login/+page.svelte @@ -11,7 +11,7 @@ }); function onLogin() { - goto("/"); + goto("/", { replaceState: true }); }