diff options
| author | Adam Soltys <[email protected]> | 2023-02-06 22:53:18 -0800 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2023-02-06 22:53:18 -0800 |
| commit | 17940dea28991beac8a8c8876b574f6abbd480b9 (patch) | |
| tree | ef6f862297698c631af6804eb75cf4bfe83bf760 /src/routes/(app)/send/+layout.svelte | |
| parent | ae2093ab252bdf56a12094da2cb43b46bd5cc1d3 (diff) | |
| parent | b5b7fe81ba245f85ecc1a67318eeb92a34949861 (diff) | |
| download | coinos-ui-test.tar.gz coinos-ui-test.zip | |
Merge branch 'master' into testtest
Diffstat (limited to 'src/routes/(app)/send/+layout.svelte')
| -rw-r--r-- | src/routes/(app)/send/+layout.svelte | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/src/routes/(app)/send/+layout.svelte b/src/routes/(app)/send/+layout.svelte index c9122466..2fb732e8 100644 --- a/src/routes/(app)/send/+layout.svelte +++ b/src/routes/(app)/send/+layout.svelte @@ -1,18 +1,38 @@ <script> + import { browser } from '$app/environment'; + import { goto } from '$app/navigation'; import { Pin } from '$comp'; import { pin } from '$lib/store'; import { onMount } from 'svelte'; + import { success, fail, post } from '$lib/utils'; export let data; let loaded; let { user } = data; - onMount(() => setTimeout(() => (loaded = true), 50)); + onMount(() => setTimeout(() => (loaded = true), 500)); + let cancel = () => goto(`/${user.username}`); + + $: browser && loaded && checkPin($pin); + let checkPin = async (p) => { + if (p?.length !== 6 || p === JSON.parse(sessionStorage.getItem('pin'))) return; + let result; + try { + result = await post('/pin', { pin: p }); + } catch (e) {} + + if (result) { + success('Pin confirmed'); + } else { + fail('Invalid pin'); + $pin = ''; + } + }; </script> {#if loaded && user.haspin && $pin?.length !== 6} - <Pin /> + <Pin bind:value={$pin} {cancel} /> {/if} <slot /> |
