From 90fd57b064d3ef0176d5747b79863d6e60a22fc1 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Wed, 5 Oct 2022 12:07:46 -0700 Subject: detect internal sends --- src/routes/+error.svelte | 24 +++++--- src/routes/+layout.server.js | 1 - src/routes/[username]/dashboard/+page.svelte | 54 ++++++++-------- .../[username]/transactions/[...page]/+page.svelte | 4 +- src/routes/send/+page.server.js | 17 +++++- src/routes/send/+page.svelte | 17 ++++-- src/routes/send/user/[username]/+page.server.js | 23 +++++++ src/routes/send/user/[username]/+page.svelte | 71 ++++++++++++++++++++++ src/routes/sent/+page.svelte | 2 +- 9 files changed, 164 insertions(+), 49 deletions(-) create mode 100644 src/routes/send/user/[username]/+page.server.js create mode 100644 src/routes/send/user/[username]/+page.svelte (limited to 'src/routes') diff --git a/src/routes/+error.svelte b/src/routes/+error.svelte index 58a3144d..e5556b44 100644 --- a/src/routes/+error.svelte +++ b/src/routes/+error.svelte @@ -2,22 +2,26 @@ import { page } from '$app/stores'; import { Icon, PageNotFound } from '$comp'; import { t } from '$lib/translations'; + + export let data; + let { user } = data; {#if $page.error.message.includes('not found') || $page.status === 404} {:else} -
-
- - - +
+ +

+ {$t('error.header')} +

- +

{$page.error.message}

-

{$t('error.header')}

-

{$page.error.message}

-

{$t('error.message')}

-
+ + +
{/if} diff --git a/src/routes/+layout.server.js b/src/routes/+layout.server.js index e9b01593..84e5ce5c 100644 --- a/src/routes/+layout.server.js +++ b/src/routes/+layout.server.js @@ -18,7 +18,6 @@ export async function load({ cookies, request, url, params }) { if (token && token !== 'undefined') { try { - console.log("GETTING USER"); user = await get('/me', auth(cookies)); } catch (e) { throw redirect(307, '/logout'); diff --git a/src/routes/[username]/dashboard/+page.svelte b/src/routes/[username]/dashboard/+page.svelte index 8d77b699..05f821ec 100644 --- a/src/routes/[username]/dashboard/+page.svelte +++ b/src/routes/[username]/dashboard/+page.svelte @@ -51,37 +51,37 @@ {/if}
-
-
- {$selectedRate - ? f(accountBalanceFiat, user.currency) - : $t('user.dashboard.fetchingRate')} +
+

+ Dashboard +

- - {accountBalanceSats} SAT - +
+ {$selectedRate ? f(accountBalanceFiat, user.currency) : $t('user.dashboard.fetchingRate')} +
+ +
+ {accountBalanceSats} SAT +
-
diff --git a/src/routes/[username]/transactions/[...page]/+page.svelte b/src/routes/[username]/transactions/[...page]/+page.svelte index 223418a3..18990fa3 100644 --- a/src/routes/[username]/transactions/[...page]/+page.svelte +++ b/src/routes/[username]/transactions/[...page]/+page.svelte @@ -23,9 +23,9 @@
{#if pages.length > 1} {#each pages as _, i} - +
{i + 1}
diff --git a/src/routes/send/+page.server.js b/src/routes/send/+page.server.js index 4108bcb5..c8edb1cc 100644 --- a/src/routes/send/+page.server.js +++ b/src/routes/send/+page.server.js @@ -16,7 +16,14 @@ export const actions = { // bitcoin if (validate(t)) { - throw redirect(303, `/send/bitcoin/${t}`); + let user; + try { + ({ user } = await get(`/invoice/${t}`)); + } catch (e) { + throw redirect(303, `/send/bitcoin/${t}`); + } + + if (user) throw redirect(303, `/send/user/${user.username}`); } // ln address @@ -28,7 +35,13 @@ export const actions = { } // user + let user; + try { + user = await get(`/users/${t}`); + } catch (e) {} + + if (user) throw redirect(303, `/send/user/${t}`); - return invalid(403, { error: 'Failed to parse destination' }); + return invalid(403, { error: 'Failed to recognize input' }); } }; diff --git a/src/routes/send/+page.svelte b/src/routes/send/+page.svelte index 8a695ac6..87d06e35 100644 --- a/src/routes/send/+page.svelte +++ b/src/routes/send/+page.svelte @@ -1,4 +1,5 @@ -
+ + {#if form?.error} +
+ {form.error} +
+ {/if}