From cdc3a2677c8728af27084024daba288153c2bd52 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Thu, 16 Mar 2023 23:04:32 -0700 Subject: admin route --- src/routes/(app)/admin/+layout.server.js | 11 +++++++++++ src/routes/(app)/admin/+layout.svelte | 10 ++++++++++ src/routes/(app)/admin/+page.server.js | 10 ++++++++++ src/routes/(app)/admin/+page.svelte | 11 +++++++++++ 4 files changed, 42 insertions(+) create mode 100644 src/routes/(app)/admin/+layout.server.js create mode 100644 src/routes/(app)/admin/+layout.svelte create mode 100644 src/routes/(app)/admin/+page.server.js create mode 100644 src/routes/(app)/admin/+page.svelte (limited to 'src/routes/(app)/admin') diff --git a/src/routes/(app)/admin/+layout.server.js b/src/routes/(app)/admin/+layout.server.js new file mode 100644 index 00000000..26449467 --- /dev/null +++ b/src/routes/(app)/admin/+layout.server.js @@ -0,0 +1,11 @@ +import { auth, get } from '$lib/utils'; +import { redirect } from '@sveltejs/kit'; + +export async function load({ cookies, parent }) { + let token = cookies.get('token'); + if (!token) throw redirect(307, '/login'); + let user = await get('/me', auth(cookies)); + if (!user) throw redirect(307, '/login'); + + return { user }; +} diff --git a/src/routes/(app)/admin/+layout.svelte b/src/routes/(app)/admin/+layout.svelte new file mode 100644 index 00000000..d7561e32 --- /dev/null +++ b/src/routes/(app)/admin/+layout.svelte @@ -0,0 +1,10 @@ + + + +
+ +
diff --git a/src/routes/(app)/admin/+page.server.js b/src/routes/(app)/admin/+page.server.js new file mode 100644 index 00000000..c4079a2f --- /dev/null +++ b/src/routes/(app)/admin/+page.server.js @@ -0,0 +1,10 @@ +import { get } from '$lib/utils'; +import { redirect } from '@sveltejs/kit'; + +export async function load({ parent }) { + let { user } = await parent(); + if (!user) throw redirect(307, '/login'); + + let users = (await get('/users')).sort((a, b) => b.balance - a.balance); + return { users }; +} diff --git a/src/routes/(app)/admin/+page.svelte b/src/routes/(app)/admin/+page.svelte new file mode 100644 index 00000000..1a747f1f --- /dev/null +++ b/src/routes/(app)/admin/+page.svelte @@ -0,0 +1,11 @@ + + +{#each users as { balance, username }} +
+
{username}
+
{balance}
+
+{/each} -- cgit v1.2.3 From fe520d01aff30c8abb09cc2bad5ed46bda3a0889 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Tue, 21 Mar 2023 00:19:29 -0700 Subject: send username with support form --- src/routes/(app)/admin/+page.server.js | 6 +++--- src/routes/(app)/admin/+page.svelte | 5 +++-- src/routes/(app)/support/+page.svelte | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) (limited to 'src/routes/(app)/admin') diff --git a/src/routes/(app)/admin/+page.server.js b/src/routes/(app)/admin/+page.server.js index c4079a2f..e19f894c 100644 --- a/src/routes/(app)/admin/+page.server.js +++ b/src/routes/(app)/admin/+page.server.js @@ -1,10 +1,10 @@ -import { get } from '$lib/utils'; +import { auth, get } from '$lib/utils'; import { redirect } from '@sveltejs/kit'; -export async function load({ parent }) { +export async function load({ cookies, parent }) { let { user } = await parent(); if (!user) throw redirect(307, '/login'); - let users = (await get('/users')).sort((a, b) => b.balance - a.balance); + let users = (await get('/users', auth(cookies))).sort((a, b) => b.balance - a.balance); return { users }; } diff --git a/src/routes/(app)/admin/+page.svelte b/src/routes/(app)/admin/+page.svelte index 1a747f1f..011ed6a2 100644 --- a/src/routes/(app)/admin/+page.svelte +++ b/src/routes/(app)/admin/+page.svelte @@ -3,9 +3,10 @@ let { users } = data; -{#each users as { balance, username }} -
+{#each users as { balance, username, expected }} +
{username}
{balance}
+
{expected}
{/each} diff --git a/src/routes/(app)/support/+page.svelte b/src/routes/(app)/support/+page.svelte index 8dbfc1af..699a0124 100644 --- a/src/routes/(app)/support/+page.svelte +++ b/src/routes/(app)/support/+page.svelte @@ -21,7 +21,7 @@ grecaptcha .execute('6LfCd8YkAAAAANmVJgzN3SQY3n3fv1RhiS5PgMYM', { action: 'submit' }) .then((token) => - post('/support', { email, message, token }) + post('/support', { username: user?.username, email, message, token }) .then(() => (sent = true)) .catch(() => fail('problem submitting')) ); -- cgit v1.2.3 From aa258684dd8cf953afe540abb233ab0daad09253 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Wed, 22 Mar 2023 16:57:03 -0700 Subject: password reset --- src/components/Pin.svelte | 2 +- src/routes/(app)/[username]/generate/+server.js | 3 ++- src/routes/(app)/[username]/reset/+server.js | 10 ++++++++++ src/routes/(app)/admin/+page.svelte | 12 +++++++++++- 4 files changed, 24 insertions(+), 3 deletions(-) create mode 100644 src/routes/(app)/[username]/reset/+server.js (limited to 'src/routes/(app)/admin') diff --git a/src/components/Pin.svelte b/src/components/Pin.svelte index 40a53b8b..0cff904f 100644 --- a/src/components/Pin.svelte +++ b/src/components/Pin.svelte @@ -28,7 +28,7 @@ try { result = await post('/pin', { pin: p }); } catch (e) { - console.log('PIN ERR', e); + console.log('Pin check failed', e); } if (result) { diff --git a/src/routes/(app)/[username]/generate/+server.js b/src/routes/(app)/[username]/generate/+server.js index 1335c3e2..e1df08e3 100644 --- a/src/routes/(app)/[username]/generate/+server.js +++ b/src/routes/(app)/[username]/generate/+server.js @@ -3,7 +3,8 @@ import { error, json } from '@sveltejs/kit'; export async function POST({ cookies, request }) { try { - return json(await post(`/user`, await request.json(), auth(cookies))); + let body = await request.json(); + return json(await post(`/user`, body, auth(cookies))); } catch (e) { throw error(500, e.message); } diff --git a/src/routes/(app)/[username]/reset/+server.js b/src/routes/(app)/[username]/reset/+server.js new file mode 100644 index 00000000..73d3d849 --- /dev/null +++ b/src/routes/(app)/[username]/reset/+server.js @@ -0,0 +1,10 @@ +import { json } from '@sveltejs/kit'; +import { auth, post } from '$lib/utils'; + +export async function POST({ cookies, request, params }) { + let { username } = params; + let r = await request.json(); + let { password } = r; + let result = await post('/reset', { password, username }, auth(cookies)); + return json(result); +} diff --git a/src/routes/(app)/admin/+page.svelte b/src/routes/(app)/admin/+page.svelte index 011ed6a2..831b0284 100644 --- a/src/routes/(app)/admin/+page.svelte +++ b/src/routes/(app)/admin/+page.svelte @@ -1,12 +1,22 @@ {#each users as { balance, username, expected }} -
+
{username}
{balance}
{expected}
+
+
+ +
{/each} -- cgit v1.2.3 From b51467da14e6a3def3ce12681b5222bf49484cd5 Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Tue, 28 Mar 2023 22:45:56 -0700 Subject: prettier --- src/lib/samples.js | 2 +- src/lib/translations/lang.json | 2 +- .../(app)/[username]/(profile)/+layout.svelte | 2 +- .../[username]/invoice/[hash]/tip/+page.svelte | 2 +- .../[username]/payments/[...page]/+page.svelte | 4 +-- src/routes/(app)/[username]/reset/+server.js | 2 +- src/routes/(app)/admin/+page.svelte | 2 +- src/routes/(app)/payment/[id]/+page.svelte | 4 +-- src/routes/(app)/send/invoice/[id]/+page.server.js | 2 +- src/routes/(app)/send/invoice/[id]/+page.svelte | 4 +-- src/routes/(app)/support/+page.svelte | 34 ++++++++++------------ src/routes/(static)/docs/+page.svelte | 6 ++-- 12 files changed, 32 insertions(+), 34 deletions(-) (limited to 'src/routes/(app)/admin') diff --git a/src/lib/samples.js b/src/lib/samples.js index 159ecf6c..14d9e4e0 100644 --- a/src/lib/samples.js +++ b/src/lib/samples.js @@ -40,5 +40,5 @@ export default { "received":0 "created":1677537428134 }`, - socketAuth: `echo '{"type":"login","data":{"username":"user","password":"password"}}' | websocat -n https://coinos.io/ws` + socketAuth: `echo '{"type":"login","data":{"username":"user","password":"password"}}' | websocat -n https://coinos.io/ws` }; diff --git a/src/lib/translations/lang.json b/src/lib/translations/lang.json index fd25a359..cbf1ce4a 100644 --- a/src/lib/translations/lang.json +++ b/src/lib/translations/lang.json @@ -5,5 +5,5 @@ "de": "Deutsch", "pt": "Português", "zh": "中国人", - "fa": "فارسی " + "fa": "فارسی " } diff --git a/src/routes/(app)/[username]/(profile)/+layout.svelte b/src/routes/(app)/[username]/(profile)/+layout.svelte index 6dfde23a..006bbf72 100644 --- a/src/routes/(app)/[username]/(profile)/+layout.svelte +++ b/src/routes/(app)/[username]/(profile)/+layout.svelte @@ -134,7 +134,7 @@ {/if} {#if user && user.username !== subject.username && subject.pubkey} -
+