diff --git a/src/routes/private/home/+page.server.ts b/src/routes/private/home/+page.server.ts new file mode 100644 index 0000000..56a2a40 --- /dev/null +++ b/src/routes/private/home/+page.server.ts @@ -0,0 +1,22 @@ +// src/routes/my-page/+page.server.ts +import type { PageServerLoad } from './$types'; + +export const load: PageServerLoad = async ({ locals }) => { + // get the logged-in user + const { data: { user }, error: authError } = await locals.supabase.auth.getUser(); + + const { data: user_profile, error: profileError } = await locals.supabase.from('profiles').select('*, section:sections (id, name)').eq('id', user?.id).single(); + + if (authError) { + console.error('Supabase auth error:', authError); + throw new Error('Could not get user'); + } + + if (profileError) { + console.error('Supabase profile error:', profileError); + throw new Error('Could not get user profile'); + } + + return { user, user_profile }; + +}; \ No newline at end of file diff --git a/src/routes/private/home/+page.svelte b/src/routes/private/home/+page.svelte index 30acacb..4589d64 100644 --- a/src/routes/private/home/+page.svelte +++ b/src/routes/private/home/+page.svelte @@ -1,36 +1,19 @@ -{#if user_data} -
-

Currently logged in

-

Username: {user_data.user_metadata.display_name}

-

Email: {user_data.email}

-
- -{:else} -

Loading user profile...

-{/if} +
+

Currently logged in

+

Username: {data.user?.user_metadata.display_name}

+

Email: {data.user?.email}

+

Section: {data.user_profile?.section.name}

+

Position: {data.user_profile?.section_position}

+
+