diff --git a/src/routes/account/login/+page.server.js b/src/routes/account/login/+page.server.js new file mode 100644 index 0000000..331a045 --- /dev/null +++ b/src/routes/account/login/+page.server.js @@ -0,0 +1,31 @@ +import { fail, redirect } from '@sveltejs/kit'; + +/** @type {import('./$types').Actions} */ +export const actions = { + login: async ({ cookies, request, url }) => { + const formData = await request.formData(); + const server = formData.get('server'); + const account = formData.get('account'); + const passphrase = formData.get('passphrase'); + + if (!account) { + return fail(400, { account, missing: true }); + } + + if (!passphrase) { + return fail(400, { account, incorrect: true }); + } + + cookies.set('ANVIL', [server, account].join('-'), { path: '/' }); + + if (url.searchParams.has('redirectTo')) { + // TODO: Remove the throw when upgrading SvelteKit + throw redirect(303, url.searchParams.get('redirectTo')); + } + + throw redirect(303, '/profile'); + + // This should be dead code now. + return { success: true }; + } +}; diff --git a/src/routes/account/login/+page.svelte b/src/routes/account/login/+page.svelte index 042a5ac..0ae9ded 100644 --- a/src/routes/account/login/+page.svelte +++ b/src/routes/account/login/+page.svelte @@ -1,11 +1,26 @@ + +
To use Anvil with your F2 account, fill in your credentials.
-+ Welcome back! Please move to your profile. +
+ {:else} ++ To use Anvil with your F2 account, fill in your credentials. +
+ {/if} ++ You don't have any projects yet. +
++ You don't have any repositories yet. +
++ Nothing here yet. +
++ You don't have any notifications yet. +
++ Adjust Anvil to your liking. +
+