diff --git a/frontend/src/routes/Article.svelte b/frontend/src/routes/Article.svelte index 1b7b6a3..99d367d 100644 --- a/frontend/src/routes/Article.svelte +++ b/frontend/src/routes/Article.svelte @@ -29,6 +29,12 @@ let article: Article; let notFound = false; onMount(async () => { + if (editMode && !$user.loggedIn) { + alert( + "You are not logged in. You are being redirected to home. TODO: Make this better." + ); + navigate("/"); + } await refreshArticle(); }); diff --git a/frontend/src/routes/EditArticle.svelte b/frontend/src/routes/EditArticle.svelte index 27992ff..ab4fff3 100644 --- a/frontend/src/routes/EditArticle.svelte +++ b/frontend/src/routes/EditArticle.svelte @@ -3,6 +3,7 @@ import { navigate } from "svelte-routing"; import { Backend, setToken, type Article } from "../lib/backend"; import { onMount } from "svelte"; + import { user } from "../lib/stores/user"; export let articleTitle: string; let title: string = ""; @@ -13,6 +14,13 @@ let error = false; let article: Article; onMount(async () => { + if (!$user.loggedIn) { + alert( + "You are not logged in. You are being redirected to home. TODO: Make this better." + ); + navigate("/"); + } + try { article = await Backend.getArticle(articleTitle); } catch (e) { diff --git a/frontend/src/routes/Upload.svelte b/frontend/src/routes/Upload.svelte index 18ae378..4b0f9ef 100644 --- a/frontend/src/routes/Upload.svelte +++ b/frontend/src/routes/Upload.svelte @@ -7,6 +7,17 @@ UploadSolid, } from "flowbite-svelte-icons"; import { navigate } from "svelte-routing"; + import { onMount } from "svelte"; + import { user } from "../lib/stores/user"; + + onMount(async () => { + if (!$user.loggedIn) { + alert( + "You are not logged in. You are being redirected to home. TODO: Make this better." + ); + navigate("/"); + } + })
diff --git a/frontend/src/routes/UploadArticle.svelte b/frontend/src/routes/UploadArticle.svelte index 97e18d2..927b39b 100644 --- a/frontend/src/routes/UploadArticle.svelte +++ b/frontend/src/routes/UploadArticle.svelte @@ -2,9 +2,19 @@ import { Label, Input, Button, Helper } from "flowbite-svelte"; import { navigate } from "svelte-routing"; import { Backend, setToken } from "../lib/backend"; + import { onMount } from "svelte"; + import { user } from "../lib/stores/user"; let title: string = ""; let description: string = ""; let error = false; + onMount(async () => { + if (!$user.loggedIn) { + alert( + "You are not logged in. You are being redirected to home. TODO: Make this better." + ); + navigate("/"); + } + })