From 3b27be021175bbca1f5c71517489ad8e125b7665 Mon Sep 17 00:00:00 2001 From: Maxime Cannoodt Date: Fri, 24 Jun 2022 09:54:30 +0200 Subject: [PATCH] error page --- webapp/src/routes/__error.svelte | 19 +++++++++++++++++++ webapp/src/routes/note/[id].svelte | 27 ++++++++++++++++++++------- 2 files changed, 39 insertions(+), 7 deletions(-) create mode 100644 webapp/src/routes/__error.svelte diff --git a/webapp/src/routes/__error.svelte b/webapp/src/routes/__error.svelte new file mode 100644 index 0000000..27c027c --- /dev/null +++ b/webapp/src/routes/__error.svelte @@ -0,0 +1,19 @@ + + + + +
+

{title}

+
diff --git a/webapp/src/routes/note/[id].svelte b/webapp/src/routes/note/[id].svelte index 4b1e851..60c90cd 100644 --- a/webapp/src/routes/note/[id].svelte +++ b/webapp/src/routes/note/[id].svelte @@ -5,14 +5,27 @@ export const load: Load = async ({ params, fetch, session, stuff }) => { const url = `${import.meta.env.VITE_BACKEND_URL}/note/${params.id}`; const response = await fetch(url); - const note: EncryptedNote = await response.json(); - note.insert_time = new Date(note.insert_time as unknown as string); - - return { - status: response.status, - props: { note } - }; + if (response.ok) { + try { + const note: EncryptedNote = await response.json(); + note.insert_time = new Date(note.insert_time as unknown as string); + return { + status: response.status, + props: { note } + }; + } catch { + return { + status: 500, + error: response.statusText + }; + } + } else { + return { + status: response.status, + error: response.statusText + }; + } };