diff options
| author | Adam Soltys <[email protected]> | 2023-03-16 23:04:32 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2023-03-16 23:04:36 -0700 |
| commit | cdc3a2677c8728af27084024daba288153c2bd52 (patch) | |
| tree | 06330e17d9c5efa4bb52a8b8db955d195a25972f /src/routes/(app)/admin | |
| parent | bee2cdd4a24787c4bf808de4d03783955610c905 (diff) | |
| download | coinos-ui-cdc3a2677c8728af27084024daba288153c2bd52.tar.gz coinos-ui-cdc3a2677c8728af27084024daba288153c2bd52.zip | |
admin route
Diffstat (limited to 'src/routes/(app)/admin')
| -rw-r--r-- | src/routes/(app)/admin/+layout.server.js | 11 | ||||
| -rw-r--r-- | src/routes/(app)/admin/+layout.svelte | 10 | ||||
| -rw-r--r-- | src/routes/(app)/admin/+page.server.js | 10 | ||||
| -rw-r--r-- | src/routes/(app)/admin/+page.svelte | 11 |
4 files changed, 42 insertions, 0 deletions
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 @@ +<script> + import { LandingHeader } from '$comp'; + export let data; + let { user } = data; +</script> + +<LandingHeader {user} /> +<main class="container px-10 md:px-40 mx-auto min-h-[600px] pb-20"> + <slot /> +</main> 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 @@ +<script> + export let data; + let { users } = data; +</script> + +{#each users as { balance, username }} + <div class="grid grid-cols-2"> + <div>{username}</div> + <div>{balance}</div> + </div> +{/each} |
