Skip to content

Commit 779cd54

Browse files
committed
web: add a 404 page & generic 404 error redirector
1 parent 5820997 commit 779cd54

File tree

3 files changed

+27
-17
lines changed

3 files changed

+27
-17
lines changed
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<script lang="ts">
2+
import { onMount } from "svelte";
3+
import { page } from "$app/state";
4+
import { goto } from "$app/navigation";
5+
import { defaultNavPage } from "$lib/subnav";
6+
7+
onMount(() => {
8+
if (page.error?.message === "Not Found") {
9+
if (page.url.pathname.startsWith("/settings")) {
10+
goto(defaultNavPage("settings"), { replaceState: true });
11+
} else if (page.url.pathname.startsWith("/about")) {
12+
goto(defaultNavPage("about"), { replaceState: true });
13+
} else {
14+
goto("/", { replaceState: true });
15+
}
16+
}
17+
});
18+
</script>

web/src/routes/+error.svelte

Lines changed: 4 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,5 @@
1-
<script lang="ts">
2-
import { onMount } from "svelte";
3-
import { page } from "$app/stores";
4-
import { goto } from "$app/navigation";
5-
import { defaultNavPage } from "$lib/subnav";
6-
7-
onMount(() => {
8-
if ($page.error?.message === "Not Found") {
9-
if ($page.url.pathname.startsWith("/settings")) {
10-
goto(defaultNavPage("settings"), { replaceState: true });
11-
} else if ($page.url.pathname.startsWith("/about")) {
12-
goto(defaultNavPage("about"), { replaceState: true });
13-
} else {
14-
goto("/", { replaceState: true });
15-
}
16-
}
17-
});
1+
<script>
2+
import ErrorRedirector from "$components/misc/ErrorRedirector.svelte";
183
</script>
4+
5+
<ErrorRedirector />

web/src/routes/404/+page.svelte

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<script>
2+
import ErrorRedirector from "$components/misc/ErrorRedirector.svelte";
3+
</script>
4+
5+
<ErrorRedirector />

0 commit comments

Comments
 (0)