From fc1fcbf71319aea2414647f84738f08034ad8284 Mon Sep 17 00:00:00 2001 From: Fuwn Date: Sun, 14 Apr 2024 13:32:26 -0700 Subject: feat(badges): hide category button --- src/routes/api/badges/+server.ts | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) (limited to 'src/routes/api/badges') diff --git a/src/routes/api/badges/+server.ts b/src/routes/api/badges/+server.ts index 2dc1d7b3..000dfa6c 100644 --- a/src/routes/api/badges/+server.ts +++ b/src/routes/api/badges/+server.ts @@ -73,6 +73,32 @@ export const PUT = async ({ cookies, url, request }) => { return await badges(identity.id); } + if (url.searchParams.get('hide') || undefined) { + const allBadges = await getUserBadges(identity.id); + + await Promise.all( + allBadges + .filter((badge) => badge.category === (url.searchParams.get('category') || '')) + .map(async (badge) => { + await updateUserBadge(identity.id, badge.id as number, { + ...badge, + hidden: + allBadges + .filter((badge) => badge.category === (url.searchParams.get('category') || '')) + .filter((badge) => badge.hidden).length > + allBadges.filter( + (badge) => badge.category === (url.searchParams.get('category') || '') + ).length / + 2 + ? false + : true + }); + }) + ); + + return await badges(identity.id); + } + const badge = { post: url.searchParams.get('post') || undefined, image: url.searchParams.get('image') || undefined, -- cgit v1.2.3