From 31eb19f078fcd388f542a0f8f96f7c929bcccdb1 Mon Sep 17 00:00:00 2001 From: Stan Runge Date: Mon, 27 Jan 2025 00:41:25 +0100 Subject: [PATCH] feat: add progress bar and inputs --- .../src/routes/progress/[id]/+page.server.ts | 11 ++++++ .../web/src/routes/progress/[id]/+page.svelte | 35 +++++++++++++++++++ 2 files changed, 46 insertions(+) diff --git a/packages/web/src/routes/progress/[id]/+page.server.ts b/packages/web/src/routes/progress/[id]/+page.server.ts index 81d5971..cf2497d 100755 --- a/packages/web/src/routes/progress/[id]/+page.server.ts +++ b/packages/web/src/routes/progress/[id]/+page.server.ts @@ -75,5 +75,16 @@ export const actions = { and(eq(tasksToTopics.taskId, Number(params.id)), eq(tasksToTopics.topicId, topicId)) ); } + }, + updateProgress: async ({ request, params }) => { + const data = await request.formData(); + + await db + .update(tasks) + .set({ + currentPoints: Number(data.get('currentPoints')), + totalPoints: Number(data.get('totalPoints')) + }) + .where(eq(tasks.id, Number(params.id))); } }; diff --git a/packages/web/src/routes/progress/[id]/+page.svelte b/packages/web/src/routes/progress/[id]/+page.svelte index b97b730..4a77d41 100755 --- a/packages/web/src/routes/progress/[id]/+page.svelte +++ b/packages/web/src/routes/progress/[id]/+page.svelte @@ -23,6 +23,10 @@ triggerRef.focus(); }); } + + function getProgress() { + return (data.task?.currentPoints / data.task?.totalPoints) * 100; + }

{data.task?.name}

@@ -110,3 +114,34 @@ {/if} + +
+

Progress ({getProgress().toFixed(2)}%)

+ +
+
+ e.target.form?.submit()} + /> + +
+
+ {getProgress()}% +
+
+ e.target.form?.submit()} + /> +
+
+