REST Service for POPCORN - ILIAS
alex
2025-07-06 e19f1dc6c1f262d01e3806f95563a072ead6e512
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
<script setup>
 
import {useRoute} from 'vue-router'
import {onMounted, reactive, ref} from "vue"
import {getUser, getUserTeilnahmen, iliasBase, routerBase} from "@/lib/api"
import LinkExtern from "../components/LinkExtern.vue"
import dayjs from "dayjs"
 
const route = useRoute()
const userId = route.params.userId
const error = ref(null)
 
const user = ref(null)
const teilnahmen = ref([])
 
onMounted(init)
 
/////////////////////////////////////////////////////////////////////////
 
async function init () {
   const data = await getUser(userId)
   console.log(data)
   user.value = data
 
   console.log(3333)
   const tn = await getUserTeilnahmen(userId)
   console.log(tn)
   teilnahmen.value = tn
}
 
</script>
 
<template>
 
   <div>
      <h1>
         User {{ userId }}
         <small class="ml-05">{{ user?.firstname }} {{ user?.lastname }}</small>
      </h1>
      <p v-if="error">{{ error }}</p>
      <!--      <pre>{{ user }}</pre>-->
 
      <div class="user" v-if="user">
         <span>usr_id</span>
         <div>
            <a :href="`${iliasBase}/ilias.php?obj_id=${user.usr_id}&ref_id=7&admin_mode=settings&cmd=view&cmdClass=ilobjusergui&baseClass=ilAdministrationGUI`" target="_blank">
               {{ user.usr_id }}
               <LinkExtern />
            </a>
         </div>
 
         <span>login</span>
         <div>{{ user.login }}</div>
 
         <span>firstname</span>
         <div>{{ user.firstname }}</div>
 
         <span>lastname</span>
         <div>{{ user.lastname }}</div>
 
         <span>gender</span>
         <div>{{ user.gender }}</div>
 
         <span>email</span>
         <div>{{ user.email }}</div>
 
         <span>Markt</span>
         <div>{{ user.Markt }}</div>
 
         <span>Marktnummer</span>
         <div>{{ user.Marktnummer }}</div>
 
         <span>Personalnummer</span>
         <div>{{ user.Personalnummer }}</div>
 
         <span>department</span>
         <div>{{ user.department }}</div>
 
 
      </div>
 
      <h2>Teilnahmen</h2>
      <table>
         <thead>
            <tr>
               <th>obj_id</th>
               <th>ref_id</th>
               <th>usr_id</th>
               <th>title</th>
               <th>passed</th>
               <th>status</th>
               <th>status_changed</th>
            </tr>
         </thead>
         <tbody>
            <tr v-for="tn in teilnahmen">
               <td>{{ tn.obj_id }}</td>
               <td class="nowrap">
                  <RouterLink :to="`${routerBase}/ui/kurs/${tn.ref_id}`">
                     {{ tn.ref_id }}
                  </RouterLink>
                  |
                  <a :href="`${iliasBase}/goto.php?target=crs_${tn.ref_id}`" target="_blank">
                     <!--                     {{ tn.ref_id }}-->
                     <LinkExtern />
                  </a>
               </td>
               <td>{{ tn.usr_id }}</td>
               <td>{{ tn.title }}</td>
               <td>{{ tn.passed }}</td>
               <td>{{ tn.status }}</td>
               <td class="nowrap">
                  <div v-if="tn.status_changed">
                     {{ dayjs(tn.status_changed).format("DD.MM.YYYY HH:mm:ss") }}
                  </div>
               </td>
            </tr>
         </tbody>
      </table>
 
      <!--      <pre>{{teilnahmen}}</pre>-->
 
   </div>
 
</template>
 
<style scoped>
 
</style>