From b9e9822ca6a8d2081d4096b0ccfa9229580924d9 Mon Sep 17 00:00:00 2001 From: Patrick Cleavelin Date: Wed, 1 Mar 2023 01:29:52 -0600 Subject: [PATCH] DISCORD AUTH!, but some endpoints are broken --- src/Login.svelte | 9 +++++---- src/routes/+page.svelte | 8 ++++---- src/routes/auth/+page.svelte | 28 ++++++++++++++++++++++++++++ src/store.ts | 14 +++++++------- 4 files changed, 44 insertions(+), 15 deletions(-) create mode 100644 src/routes/auth/+page.svelte diff --git a/src/Login.svelte b/src/Login.svelte index 263c4bf..85ac080 100644 --- a/src/Login.svelte +++ b/src/Login.svelte @@ -1,10 +1,12 @@

You need to login first

- diff --git a/src/routes/+page.svelte b/src/routes/+page.svelte index 98e587e..f8facda 100644 --- a/src/routes/+page.svelte +++ b/src/routes/+page.svelte @@ -8,8 +8,8 @@ const apiAddIntro = async (guild, channel, username, selectedIntros) => { for (const intro of selectedIntros) { const response = await fetch( - `http://localhost:7756/intros/${guild}/${channel}/${$member.username}/${intro}`, - { method: 'POST' } + `http://localhost:7756/intros/${guild}/${channel}/${intro}`, + { method: 'POST', headers: {"token": $member.token} } ); if (!response.ok) { const body = await response.json(); @@ -23,8 +23,8 @@ const apiRemoveIntro = async (guild, channel, username, selectedIntros) => { for (const intro of selectedIntros) { const response = await fetch( - `http://localhost:7756/intros/${guild}/${channel}/${$member.username}/${intro}/remove`, - { method: 'POST' } + `http://localhost:7756/intros/${guild}/${channel}/${intro}/remove`, + { method: 'POST', headers: {"token": $member.token} } ); if (!response.ok) { const body = await response.json(); diff --git a/src/routes/auth/+page.svelte b/src/routes/auth/+page.svelte new file mode 100644 index 0000000..67dab34 --- /dev/null +++ b/src/routes/auth/+page.svelte @@ -0,0 +1,28 @@ + + +{#if loginFailed} +

Login failed

+{/if} diff --git a/src/store.ts b/src/store.ts index d1cf7d9..365cf04 100644 --- a/src/store.ts +++ b/src/store.ts @@ -20,17 +20,17 @@ function createMemberStore(): MemberStore { subscribe: subscribe, set: set, addIntro: (intro: IntroIndex) => { update((n) => n.intros.push(intro)); return intro }, - _fakeLogin: async (username) => { - const response = (await (await fetch(`http://localhost:7756/me/${username}`)).json()) + login: async (token) => { + const response = (await (await fetch( + 'http://localhost:7756/me', + { headers: {"token": token} })).json()) if (response === "NoUserFound") { - return false; + return; } else { - set(response.Me) - - return true; + set({ token: token, ...response.Me }) } - }, + } } }