diff options
| author | Fuwn <[email protected]> | 2024-01-04 21:27:59 -0800 |
|---|---|---|
| committer | Fuwn <[email protected]> | 2024-01-04 21:27:59 -0800 |
| commit | fa6c05cc910feabc239ca711d44439ebd5a922c1 (patch) | |
| tree | 90f2df51ab09b032e8da8b9407c6acd08440fa63 /src/routes | |
| parent | fix(html): adjust offset to navigation (diff) | |
| download | due.moe-fa6c05cc910feabc239ca711d44439ebd5a922c1.tar.xz due.moe-fa6c05cc910feabc239ca711d44439ebd5a922c1.zip | |
style(badges): simplify
Diffstat (limited to 'src/routes')
| -rw-r--r-- | src/routes/api/badges/+server.ts | 41 |
1 files changed, 18 insertions, 23 deletions
diff --git a/src/routes/api/badges/+server.ts b/src/routes/api/badges/+server.ts index 7d1b6329..2bf9a728 100644 --- a/src/routes/api/badges/+server.ts +++ b/src/routes/api/badges/+server.ts @@ -3,16 +3,18 @@ import { removeUserBadge, updateUserBadge } from '$lib/Database/badges'; import { getUserBadges } from '$lib/Database/badges'; import { addUserBadge } from '$lib/Database/badges'; +const unauthorised = new Response('Unauthorised', { status: 401 }); + +const badges = async (id: number) => Response.json(await getUserBadges(id)); + export const GET = async ({ url }) => { - return Response.json(await getUserBadges(Number(url.searchParams.get('id') || 0))); + return badges(Number(url.searchParams.get('id') || 0)); }; export const DELETE = async ({ url, cookies }) => { const userCookie = cookies.get('user'); - if (!userCookie) { - return new Response('Unauthenticated', { status: 401 }); - } + if (!userCookie) return unauthorised; const user = JSON.parse(userCookie); const identity = await userIdentity({ @@ -24,15 +26,13 @@ export const DELETE = async ({ url, cookies }) => { await removeUserBadge(identity.id, Number(url.searchParams.get('id'))); - return Response.json(await getUserBadges(identity.id)); + return badges(identity.id); }; export const PUT = async ({ cookies, url }) => { const userCookie = cookies.get('user'); - if (!userCookie) { - return new Response('Unauthenticated', { status: 401 }); - } + if (!userCookie) return unauthorised; const user = JSON.parse(userCookie); const identity = await userIdentity({ @@ -41,28 +41,23 @@ export const PUT = async ({ cookies, url }) => { accessToken: user['access_token'], refreshToken: user['refresh_token'] }); + const badge = { + post: url.searchParams.get('post') || undefined, + image: url.searchParams.get('image') || undefined, + description: url.searchParams.get('description') || undefined, + time: url.searchParams.get('time') || undefined, + category: url.searchParams.get('category') || undefined + }; if ( (await getUserBadges(identity.id)).find( (badge) => Number(badge.id) === Number(url.searchParams.get('update')) ) ) { - await updateUserBadge(identity.id, Number(url.searchParams.get('update')), { - post: url.searchParams.get('post') || undefined, - image: url.searchParams.get('image') || undefined, - description: url.searchParams.get('description') || undefined, - time: url.searchParams.get('time') || undefined, - category: url.searchParams.get('category') || undefined - }); + await updateUserBadge(identity.id, Number(url.searchParams.get('update')), badge); } else { - await addUserBadge(identity.id, { - post: url.searchParams.get('post') || undefined, - image: url.searchParams.get('image') || undefined, - description: url.searchParams.get('description') || undefined, - time: url.searchParams.get('time') || undefined, - category: url.searchParams.get('category') || undefined - }); + await addUserBadge(identity.id, badge); } - return Response.json(await getUserBadges(identity.id)); + return badges(identity.id); }; |