aboutsummaryrefslogtreecommitdiffstats
path: root/src/routes
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2022-10-05 12:38:06 -0700
committerAdam Soltys <[email protected]>2022-10-05 12:38:06 -0700
commite98337a5f0d0e1640016b685341264d9e552b4bb (patch)
treef03d56702de5ed69afc352055c8a20c02d62669f /src/routes
parentc8a9c7ac93f348df23c49776b576dfe25d09878d (diff)
downloadcoinos-ui-e98337a5f0d0e1640016b685341264d9e552b4bb.tar.gz
coinos-ui-e98337a5f0d0e1640016b685341264d9e552b4bb.zip
handle login/registration errors
Diffstat (limited to 'src/routes')
-rw-r--r--src/routes/+error.svelte10
-rw-r--r--src/routes/login/+page.server.js4
-rw-r--r--src/routes/login/+page.svelte3
-rw-r--r--src/routes/register/+page.server.js11
-rw-r--r--src/routes/register/+page.svelte3
5 files changed, 20 insertions, 11 deletions
diff --git a/src/routes/+error.svelte b/src/routes/+error.svelte
index 2fefcd81..d561b111 100644
--- a/src/routes/+error.svelte
+++ b/src/routes/+error.svelte
@@ -2,6 +2,7 @@
import { page } from '$app/stores';
import { Icon, PageNotFound } from '$comp';
import { t } from '$lib/translations';
+ import { back } from '$lib/utils';
export let data;
let { user } = data;
@@ -17,10 +18,9 @@
<p class="px-1 break-all mb-8">{$page.error.message}</p>
- <a href={`/${user.username}/dashboard`}>
- <button class="rounded-full bg-black text-white py-2 px-5 font-bold hover:opacity-80 mb-2"
- >Go Home</button
- >
- </a>
+ <button
+ class="rounded-full bg-black text-white py-2 px-5 font-bold hover:opacity-80 mb-2"
+ on:click={back}>Back</button
+ >
</div>
{/if}
diff --git a/src/routes/login/+page.server.js b/src/routes/login/+page.server.js
index d26d16ed..750933a0 100644
--- a/src/routes/login/+page.server.js
+++ b/src/routes/login/+page.server.js
@@ -7,8 +7,10 @@ export const actions = {
try {
await login(user, cookies);
} catch (e) {
- return invalid(400, { message: 'Login failed' });
+ console.log("fail")
+ return invalid(400, { error: 'Login failed' });
}
+ console.log("succ")
throw redirect(303, `/${user.username}/dashboard`);
}
diff --git a/src/routes/login/+page.svelte b/src/routes/login/+page.svelte
index 9fd6438d..57b67643 100644
--- a/src/routes/login/+page.svelte
+++ b/src/routes/login/+page.svelte
@@ -1,5 +1,6 @@
<script>
import { RegisterOrLogin } from '$comp';
+ export let form;
</script>
-<RegisterOrLogin pageID="signIn" />
+<RegisterOrLogin pageID="signIn" bind:form />
diff --git a/src/routes/register/+page.server.js b/src/routes/register/+page.server.js
index 26f4475f..5667914b 100644
--- a/src/routes/register/+page.server.js
+++ b/src/routes/register/+page.server.js
@@ -1,4 +1,4 @@
-import { redirect } from '@sveltejs/kit';
+import { invalid, redirect } from '@sveltejs/kit';
import { post, login } from '$lib/utils';
export const actions = {
@@ -7,8 +7,13 @@ export const actions = {
let { username, password, redirect: r } = form;
let user = { username, password };
- await post('/register', { user });
- await login(user, cookies);
+
+ try {
+ await post('/register', { user });
+ await login(user, cookies);
+ } catch (e) {
+ return invalid(400, { error: e.message });
+ }
throw redirect(303, r || `/${user.username}/dashboard`);
}
diff --git a/src/routes/register/+page.svelte b/src/routes/register/+page.svelte
index 82acb53b..747b3f8b 100644
--- a/src/routes/register/+page.svelte
+++ b/src/routes/register/+page.svelte
@@ -1,5 +1,6 @@
<script>
import { RegisterOrLogin } from '$comp';
+ export let form;
</script>
-<RegisterOrLogin pageID="register" />
+<RegisterOrLogin pageID="register" bind:form />