diff --git a/src/routes/(app)/users/[name]/+page.server.js b/src/routes/(app)/users/[name]/+page.server.js new file mode 100644 index 0000000..f34d297 --- /dev/null +++ b/src/routes/(app)/users/[name]/+page.server.js @@ -0,0 +1,22 @@ +import { getUser } from "$lib/server/db/user"; +import { getIdFromName } from "$lib/util"; +import { error } from "@sveltejs/kit"; + +/** @type {import("@sveltejs/kit").ServerLoad} */ +export async function load({ locals, params }) { + const user_id = getIdFromName(params.name); + + if (user_id === null) { + return error(404, `Invalid Name ${params.name}`); + } + + const user = await getUser(locals.sql, user_id); + + if ('error' in user) { + return error(404, `No User of ID ${user_id}`); + } + + return { + user: user + }; +} \ No newline at end of file diff --git a/src/routes/(app)/users/[name]/+page.svelte b/src/routes/(app)/users/[name]/+page.svelte new file mode 100644 index 0000000..59380bf --- /dev/null +++ b/src/routes/(app)/users/[name]/+page.svelte @@ -0,0 +1,20 @@ + + +
{data.user.joinDate}