From 97e0f73d88d0b3ba3e905ec354a8490cfc79873f Mon Sep 17 00:00:00 2001
From: alex <alex@alexloehr.net>
Date: Fri, 06 Jun 2025 14:26:14 +0000
Subject: [PATCH] adding search
---
vue/src/pages/Users.vue | 54 ++++++++++++++++++++++++++----------------------------
1 files changed, 26 insertions(+), 28 deletions(-)
diff --git a/vue/src/pages/Users.vue b/vue/src/pages/Users.vue
index 8e3b0e6..3971e71 100644
--- a/vue/src/pages/Users.vue
+++ b/vue/src/pages/Users.vue
@@ -3,38 +3,38 @@
import {onMounted, reactive, ref} from "vue"
import {useRoute} from "vue-router"
import Pagination from "../components/Pagination.vue"
+import {getUsers, routerBase} from "@/lib/api"
+import {useRouteQuery} from '@vueuse/router'
+import {onKeyStroke} from "@vueuse/core"
const route = useRoute()
const userId = route.params.userId
const users = reactive({
total: 0,
- offset: 0,
+ offset: 0, // NO! USE offset BELOW!
limit: 10,
data: [],
})
-const limit = 24
+const offset = useRouteQuery("offset", 0, {transform: Number})
+const limit = 22
const error = ref(null)
-onMounted(init)
+onMounted(() => init(offset.value))
/////////////////////////////////////////////////////////////////////////
-async function init (offset = 0) {
- const res = await fetch(`/api/users?offset=${offset}&limit=${limit}&token=jiuGfr432898D90290kjfsldkfn3hh8F`)
- const data = await res.json()
+async function init (noffset = 0) {
+ const data = await getUsers(noffset, limit)
console.log(data)
- if (res.status === 200) {
- Object.assign(users,data)
- }
- else {
- error.value = `ERROR: ${res.status}`
- }
+ Object.assign(users, data)
+ offset.value = noffset
}
function go (offset) {
- console.log("go", offset)
+ console.log("go to offset", offset)
return init(offset)
}
+
</script>
@@ -43,10 +43,8 @@
<div>
<h1>
- Users
- <small>
- {{users.offset}} - {{users.offset+users.data.length}} von {{users.total}}
- </small>
+ ILIAS Users
+ <!-- <small>{{users.offset}} - {{users.offset+users.data.length}} von {{users.total}}</small>-->
</h1>
<p>{{ userId }}</p>
<p v-if="error">{{ error }}</p>
@@ -63,7 +61,7 @@
<th>firstname</th>
<th>lastname</th>
<th>gender</th>
-<!-- <th>email</th>-->
+ <!-- <th>email</th>-->
<th>institution</th>
<th>department</th>
</tr>
@@ -71,23 +69,23 @@
<tbody>
<tr v-for="user in users.data">
<td>
- <RouterLink :to="`/ui/user/${user.usr_id}`">
- {{user.usr_id}}
+ <RouterLink :to="`${routerBase}/ui/user/${user.usr_id}`">
+ {{ user.usr_id }}
</RouterLink>
</td>
- <td>{{user.login}}</td>
- <td>{{user.firstname}}</td>
- <td>{{user.lastname}}</td>
- <td>{{user.gender}}</td>
-<!-- <td>{{ user.email}}</td>-->
- <td>{{user.institution}}</td>
- <td>{{user.department}}</td>
+ <td>{{ user.login }}</td>
+ <td>{{ user.firstname }}</td>
+ <td>{{ user.lastname }}</td>
+ <td>{{ user.gender }}</td>
+ <!-- <td>{{ user.email}}</td>-->
+ <td>{{ user.institution }}</td>
+ <td>{{ user.department }}</td>
</tr>
</tbody>
</table>
</div>
- <pre>{{ users }}</pre>
+ <!-- <pre>{{ users }}</pre>-->
</div>
</template>
--
Gitblit v1.8.0