From acf56c92fff8319c5937989c612f0b27dd3938d9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aaron=20D=C3=B6tsch?= <aaron@fsmpi.rwth-aachen.de> Date: Sat, 5 Aug 2023 23:02:04 +0200 Subject: [PATCH] Add user history page to admin panel --- src/routes/admin/user/UserItem.svelte | 6 +++++- src/routes/admin/user/[id]/history/+page.server.js | 9 +++++++++ src/routes/admin/user/[id]/history/+page.svelte | 10 ++++++++++ 3 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 src/routes/admin/user/[id]/history/+page.server.js create mode 100644 src/routes/admin/user/[id]/history/+page.svelte diff --git a/src/routes/admin/user/UserItem.svelte b/src/routes/admin/user/UserItem.svelte index 03695bc..563632d 100644 --- a/src/routes/admin/user/UserItem.svelte +++ b/src/routes/admin/user/UserItem.svelte @@ -18,6 +18,10 @@ <td>{email}</td> <td><span title={comment}>{(comment??"").split("\n")[0].substring(0, 30)}</span></td> <td>{(balance/100).toFixed(2)}€</td> - <td><button on:click={()=>edit=true}>Bearbeiten</button><button on:click={()=>goto("/admin/user/"+id)}>Karten/Transaktionen</button></td> + <td> + <button on:click={()=>edit=true}>Bearbeiten</button> + <button on:click={()=>goto("/admin/user/"+id)}>Karten/Transaktionen</button> + <button on:click={()=>goto("/admin/user/"+id+"/history")}>Transaktionen</button> + </td> </tr> {/if} diff --git a/src/routes/admin/user/[id]/history/+page.server.js b/src/routes/admin/user/[id]/history/+page.server.js new file mode 100644 index 0000000..0ddcab0 --- /dev/null +++ b/src/routes/admin/user/[id]/history/+page.server.js @@ -0,0 +1,9 @@ +import { fetchTransactions } from '../../../../api/transactions.js'; +import { getUser } from '../../../api/users.js'; + +export async function load(event) { + const userId = parseInt(event.params.id); + const user = await getUser(userId); + const { transactions, hasMore } = await fetchTransactions(userId, user.balance, Date.now(), 100); + return { transactions, hasMore, user }; +}; diff --git a/src/routes/admin/user/[id]/history/+page.svelte b/src/routes/admin/user/[id]/history/+page.svelte new file mode 100644 index 0000000..7871026 --- /dev/null +++ b/src/routes/admin/user/[id]/history/+page.svelte @@ -0,0 +1,10 @@ +<script> + import UserHistory from '../../../../../components/UserHistory.svelte'; + + export let data; +</script> + +<a href="/admin/user">Zurück</a> + +<h2>Transaktionsverlauf von {data.user.name}</h2> +<UserHistory initialData={data} userId={data.user.id} /> -- GitLab