diff options
| author | Fuwn <[email protected]> | 2023-10-26 14:48:00 -0700 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2023-10-26 14:48:00 -0700 |
| commit | e61da1367da23c309bd006416d598d861dfcfb2c (patch) | |
| tree | 9e66664240f764c307292b772d6631cca349c363 /src/routes | |
| parent | merge: main into badges (diff) | |
| download | due.moe-e61da1367da23c309bd006416d598d861dfcfb2c.tar.xz due.moe-e61da1367da23c309bd006416d598d861dfcfb2c.zip | |
refactor(badges): move to bun:sqlite
Diffstat (limited to 'src/routes')
| -rw-r--r-- | src/routes/api/badges/add/+server.ts | 11 | ||||
| -rw-r--r-- | src/routes/user/[user]/badges/+page.svelte | 31 |
2 files changed, 23 insertions, 19 deletions
diff --git a/src/routes/api/badges/add/+server.ts b/src/routes/api/badges/add/+server.ts index 6ce9421e..627176a7 100644 --- a/src/routes/api/badges/add/+server.ts +++ b/src/routes/api/badges/add/+server.ts @@ -1,7 +1,7 @@ import { userIdentity } from '$lib/AniList/identity.js'; -import { addUserBadges } from '$lib/userBadgesDatabase.js'; +import { addUserBadge } from '$lib/userBadgesDatabase.js'; -export const POST = async ({ cookies, request }) => { +export const POST = async ({ cookies, url }) => { const userCookie = cookies.get('user'); if (!userCookie) { @@ -15,9 +15,12 @@ export const POST = async ({ cookies, request }) => { accessToken: user['access_token'], refreshToken: user['refresh_token'] }); - const formData = await request.json(); - addUserBadges(identity.id, formData); + addUserBadge(identity.id, { + post: url.searchParams.get('post') || undefined, + image: url.searchParams.get('image') || undefined, + description: url.searchParams.get('description') || undefined + }); return Response.json({}); }; diff --git a/src/routes/user/[user]/badges/+page.svelte b/src/routes/user/[user]/badges/+page.svelte index 293a7ba5..324d568e 100644 --- a/src/routes/user/[user]/badges/+page.svelte +++ b/src/routes/user/[user]/badges/+page.svelte @@ -26,25 +26,26 @@ const activityURL = document.querySelector('input[name="activity_url"]') as HTMLInputElement; const description = document.querySelector('input[name="description"]') as HTMLInputElement; - fetch(`/api/badges/add`, { - method: 'POST', - body: JSON.stringify([ - { image: imageURL.value, post: activityURL.value, description: description.value } - ]) + fetch( + `/api/badges/add?image=${encodeURIComponent(imageURL.value)}&post=${encodeURIComponent( + activityURL.value + )}&description=${encodeURIComponent(description.value)}`, + { + method: 'POST' + } + ).then(() => { + imageURL.value = ''; + activityURL.value = ''; + description.value = ''; }); - - console.log(imageURL.value, activityURL.value, description.value); - - imageURL.value = ''; - activityURL.value = ''; - description.value = ''; }; const removeBadge = (badge: Badge) => { fetch(`/api/badges/remove?id=${badge.id}`, { method: 'POST' + }).then(() => { + (document.querySelector(`#badge-${badge.id}`) as HTMLAnchorElement).style.display = 'none'; }); - (document.querySelector(`#badge-${badge.id}`) as HTMLAnchorElement).style.display = 'none'; }; </script> @@ -56,9 +57,9 @@ <a href={`/user/${data.username}`}>Back to Profile</a> {#if isOwner} • - <a href={`#`} on:click={() => (editMode = !editMode)} - >{editMode ? 'Disable' : 'Enable'} Edit Mode</a - > + <a href={`#`} on:click={() => (editMode = !editMode)}> + {editMode ? 'Disable' : 'Enable'} Edit Mode + </a> {/if} </p> |