Mercurial > gemma
annotate client/src/components/usermanagement/Usermanagement.vue @ 5736:55892008ec96 default tip
Fixed a bunch of corner cases in WG import.
author | Sascha Wilde <wilde@sha-bang.de> |
---|---|
date | Wed, 29 May 2024 19:02:42 +0200 |
parents | 84d01a536bec |
children |
rev | line source |
---|---|
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
1 <template> |
2322
a25b4988eb0c
client: fixed usermanagement styles
Markus Kottlaender <markus@intevation.de>
parents:
2320
diff
changeset
|
2 <div class="main d-flex flex-row" style="position: relative;"> |
2919
6c5364ff0abb
client: removed a lot of unnecessary closing tags
Markus Kottlaender <markus@intevation.de>
parents:
2899
diff
changeset
|
3 <Spacer /> |
2534
bb5286acfee2
client: reduced spacings between and inside boxes and more compact main menu
Markus Kottlaender <markus@intevation.de>
parents:
2503
diff
changeset
|
4 <div class="d-flex content py-2"> |
2322
a25b4988eb0c
client: fixed usermanagement styles
Markus Kottlaender <markus@intevation.de>
parents:
2320
diff
changeset
|
5 <div :class="userlistStyle"> |
a25b4988eb0c
client: fixed usermanagement styles
Markus Kottlaender <markus@intevation.de>
parents:
2320
diff
changeset
|
6 <div class="card shadow-xs"> |
5509
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
7 <UIBoxHeader |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
8 icon="users-cog" |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
9 :title="usersLabel" |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
10 :checkBox="checkboxObject" |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
11 /> |
2463
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
12 <UITableHeader |
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
13 :columns="[ |
2782
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
14 { id: 'role', title: `${roleForColumLabel}`, class: 'col-1' }, |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
15 { id: 'user', title: `${usernameLabel}`, class: 'col-4' }, |
5367
1695e17c5a83
Adds schedualbility for reports as an import.
Thomas Junk <thomas.junk@intevation.de>
parents:
5359
diff
changeset
|
16 { id: 'country', title: `${countryLabel}`, class: 'col-1' }, |
5348
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
17 { id: 'email', title: `${emailLabel}`, class: 'col-3' }, |
5368
a3ec478882ef
fix sorting of report receivers
Thomas Junk <thomas.junk@intevation.de>
parents:
5367
diff
changeset
|
18 { id: 'reports', title: `${reportsLabel}`, class: 'col-1' } |
2463
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
19 ]" |
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
20 /> |
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
21 <UITableBody |
5509
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
22 :data=" |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
23 usersForTable |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
24 | sortTable(sortColumn, sortDirection, page, pageSize) |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
25 " |
2880
c40540889b53
client: code cleanup, slight style improvements
Markus Kottlaender <markus@intevation.de>
parents:
2874
diff
changeset
|
26 :isActive="item => item === currentUser" |
2463
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
27 maxHeight="47rem" |
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
28 > |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
29 <template v-slot:row="{ item: user }"> |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
30 <div |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
31 class="table-cell center col-1" |
5506
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
32 :style="{ opacity: user.active ? '1' : '0.7' }" |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
33 > |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
34 <font-awesome-icon |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
35 v-tooltip="roleLabel(user.role)" |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
36 :icon="roleIcon(user.role)" |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
37 class="fa-lg" |
2919
6c5364ff0abb
client: removed a lot of unnecessary closing tags
Markus Kottlaender <markus@intevation.de>
parents:
2899
diff
changeset
|
38 /> |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
39 </div> |
5506
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
40 <div |
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
41 class="table-cell col-4" |
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
42 :style="{ opacity: user.active ? '1' : '0.7' }" |
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
43 > |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
44 {{ user.user }} |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
45 </div> |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
46 <div |
5506
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
47 :style="{ opacity: user.active ? '1' : '0.7' }" |
5367
1695e17c5a83
Adds schedualbility for reports as an import.
Thomas Junk <thomas.junk@intevation.de>
parents:
5359
diff
changeset
|
48 class="table-cell center col-1" |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
49 > |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
50 {{ user.country }} |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
51 </div> |
5506
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
52 <div |
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
53 class="table-cell col-3" |
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
54 :style="{ opacity: user.active ? '1' : '0.7' }" |
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
55 > |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
56 {{ user.email }} |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
57 </div> |
5348
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
58 <div class="table-cell center col-1"> |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
59 <toggle-button |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
60 :value="user.reports" |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
61 v-model="user.reports" |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
62 class="pt-1" |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
63 :sync="true" |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
64 :speed="100" |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
65 @change="toggleReport(user)" |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
66 v-tooltip="receivesReportLabel" |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
67 :width="40" |
5506
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
68 :disabled="!user.active" |
5348
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
69 :height="20" |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
70 /> |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
71 </div> |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
72 <div class="table-cell col text-right justify-content-end"> |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
73 <button |
5510
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
74 @click="selectUser(user.user)" |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
75 class="btn btn-xs btn-dark mr-1" |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
76 v-tooltip="getEditLabel(user.active)" |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
77 > |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
78 <font-awesome-icon |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
79 v-if="user.active" |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
80 icon="pencil-alt" |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
81 fixed-width |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
82 /> |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
83 <font-awesome-icon v-else icon="undo" fixed-width /> |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
84 </button> |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
85 <button |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
86 @click="sendTestMail(user.user)" |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
87 class="btn btn-xs btn-dark mr-1" |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
88 v-tooltip="sendMailLabel" |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
89 v-if="user.email" |
5506
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
90 :disabled="!user.active" |
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
91 :style="{ cursor: user.active ? 'pointer' : 'default' }" |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
92 > |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
93 <font-awesome-icon icon="paper-plane" fixed-width /> |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
94 </button> |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
95 <button |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
96 @click="deleteUser(user.user)" |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
97 class="btn btn-xs btn-dark" |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
98 v-tooltip="deleteUserLabel" |
5506
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
99 :style="{ cursor: user.active ? 'pointer' : 'default' }" |
90506606a7ef
Client: Distinguish deactivated users in the table
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5368
diff
changeset
|
100 :disabled="!user.active" |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
101 > |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
102 <font-awesome-icon icon="trash" fixed-width /> |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
103 </button> |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
104 </div> |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
105 </template> |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
106 </UITableBody> |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
107 <div class="p-3 border-top d-flex justify-content-between"> |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
108 <div></div> |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
109 <div> |
2463
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
110 <button |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
111 @click="prevPage" |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
112 v-if="this.page !== 1" |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
113 class="mr-2 btn btn-sm btn-light align-self-center" |
2463
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
114 > |
2919
6c5364ff0abb
client: removed a lot of unnecessary closing tags
Markus Kottlaender <markus@intevation.de>
parents:
2899
diff
changeset
|
115 <font-awesome-icon icon="angle-left" /> |
2463
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
116 </button> |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
117 {{ this.page }} / {{ this.pages }} |
2463
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
118 <button |
2874
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
119 @click="nextPage" |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
120 v-if="this.page !== this.pages" |
b9a6abef9f1c
client: more unified table layout
Markus Kottlaender <markus@intevation.de>
parents:
2782
diff
changeset
|
121 class="ml-2 btn btn-sm btn-light align-self-center" |
2463
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
122 > |
2919
6c5364ff0abb
client: removed a lot of unnecessary closing tags
Markus Kottlaender <markus@intevation.de>
parents:
2899
diff
changeset
|
123 <font-awesome-icon icon="angle-right" /> |
2463
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
124 </button> |
8cc3cd1b27f2
client: usermanagement: implemented new table component
Markus Kottlaender <markus@intevation.de>
parents:
2387
diff
changeset
|
125 </div> |
2322
a25b4988eb0c
client: fixed usermanagement styles
Markus Kottlaender <markus@intevation.de>
parents:
2320
diff
changeset
|
126 <button @click="addUser" class="btn btn-info addbutton shadow-sm"> |
a25b4988eb0c
client: fixed usermanagement styles
Markus Kottlaender <markus@intevation.de>
parents:
2320
diff
changeset
|
127 <translate>Add User</translate> |
a25b4988eb0c
client: fixed usermanagement styles
Markus Kottlaender <markus@intevation.de>
parents:
2320
diff
changeset
|
128 </button> |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
129 </div> |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
130 </div> |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
131 </div> |
5351
4b367f7e39b4
Added messaging from overview to details.
Thomas Junk <thomas.junk@intevation.de>
parents:
5350
diff
changeset
|
132 <Userdetail :reportToggled="reportToggled" v-if="isUserDetailsVisible" /> |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
133 </div> |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
134 </div> |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
135 </template> |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
136 |
5629
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
137 <style scoped> |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
138 .content { |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
139 width: 100%; |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
140 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
141 |
5629
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
142 .userdetails { |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
143 width: 50%; |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
144 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
145 |
5629
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
146 .main { |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
147 height: 100%; |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
148 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
149 |
5629
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
150 .icon { |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
151 font-size: large; |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
152 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
153 |
5629
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
154 .userlist { |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
155 min-width: 520px; |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
156 height: 100%; |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
157 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
158 |
5629
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
159 .userlistsmall { |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
160 width: 100%; |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
161 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
162 |
5629
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
163 .userlistextended { |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
164 width: 100%; |
84d01a536bec
Transformed scss and sass styles into css
Luisa Beerboom <lbeerboom@intevation.de>
parents:
5510
diff
changeset
|
165 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
166 </style> |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
167 |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
168 <script> |
1362
ca33ad696594
remove the first empyty lines
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1361
diff
changeset
|
169 /* This is Free Software under GNU Affero General Public License v >= 3.0 |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
170 * without warranty, see README.md and license for details. |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
171 * |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
172 * SPDX-License-Identifier: AGPL-3.0-or-later |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
173 * License-Filename: LICENSES/AGPL-3.0.txt |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
174 * |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
175 * Copyright (C) 2018 by via donau |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
176 * – Österreichische Wasserstraßen-Gesellschaft mbH |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
177 * Software engineering by Intevation GmbH |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
178 * |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
179 * Author(s): |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
180 * Thomas Junk <thomas.junk@intevation.de> |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
181 */ |
1613
f2d24dceecc7
refac: cleanup import paths
Thomas Junk <thomas.junk@intevation.de>
parents:
1606
diff
changeset
|
182 import store from "@/store"; |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
183 import { mapGetters, mapState } from "vuex"; |
2985
1b8bb4f89227
client: removed .js and .vue extention from imports
Markus Kottlaender <markus@intevation.de>
parents:
2919
diff
changeset
|
184 import { displayError, displayInfo } from "@/lib/errors"; |
2320
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
185 import { HTTP } from "@/lib/http"; |
2738
add2d47c2567
client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents:
2640
diff
changeset
|
186 import { sortTable } from "@/lib/mixins"; |
1674
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
187 |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
188 export default { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
189 name: "userview", |
2738
add2d47c2567
client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents:
2640
diff
changeset
|
190 mixins: [sortTable], |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
191 data() { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
192 return { |
5351
4b367f7e39b4
Added messaging from overview to details.
Thomas Junk <thomas.junk@intevation.de>
parents:
5350
diff
changeset
|
193 sortColumn: "user", // overriding the sortTable mixin's empty default value |
5509
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
194 reportToggled: false, |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
195 usersForTable: [], |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
196 areSomeUsersHidden: false |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
197 }; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
198 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
199 components: { |
1669
16fb9667ddf8
refac: use dynamic imports for components
Thomas Junk <thomas.junk@intevation.de>
parents:
1613
diff
changeset
|
200 Userdetail: () => import("./Userdetail"), |
16fb9667ddf8
refac: use dynamic imports for components
Thomas Junk <thomas.junk@intevation.de>
parents:
1613
diff
changeset
|
201 Spacer: () => import("@/components/Spacer") |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
202 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
203 computed: { |
5348
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
204 ...mapGetters("usermanagement", ["isUserDetailsVisible", "users"]), |
1455
33dda08d67be
unified layout for adminsection
Thomas Junk <thomas.junk@intevation.de>
parents:
1448
diff
changeset
|
205 ...mapState("application", ["showSidebar"]), |
5348
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
206 ...mapState("usermanagement", ["currentUser"]), |
2760
c6fba10926cc
client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2739
diff
changeset
|
207 usersLabel() { |
c6fba10926cc
client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2739
diff
changeset
|
208 return this.$gettext("Users"); |
c6fba10926cc
client:correct a set of strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2739
diff
changeset
|
209 }, |
5348
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
210 reportsLabel() { |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
211 return this.$gettext("DQL Report"); |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
212 }, |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
213 receivesReportLabel() { |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
214 return this.$gettext("User receives Data Quality Report"); |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
215 }, |
2595
dda4cec8e67b
client:translations: correct some strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2534
diff
changeset
|
216 sendMailLabel() { |
dda4cec8e67b
client:translations: correct some strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2534
diff
changeset
|
217 return this.$gettext("Send testmail"); |
dda4cec8e67b
client:translations: correct some strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2534
diff
changeset
|
218 }, |
dda4cec8e67b
client:translations: correct some strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2534
diff
changeset
|
219 deleteUserLabel() { |
dda4cec8e67b
client:translations: correct some strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2534
diff
changeset
|
220 return this.$gettext("Delete user"); |
dda4cec8e67b
client:translations: correct some strings marking
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2534
diff
changeset
|
221 }, |
2782
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
222 roleForColumLabel() { |
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
223 return this.$gettext("Role"); |
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
224 }, |
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
225 usernameLabel() { |
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
226 return this.$gettext("Username"); |
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
227 }, |
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
228 countryLabel() { |
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
229 return this.$gettext("Country"); |
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
230 }, |
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
231 emailLabel() { |
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
232 return this.$gettext("Email"); |
615b0a9b8098
Client: correct strings marking for translations
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2760
diff
changeset
|
233 }, |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
234 pages() { |
5509
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
235 return Math.ceil(this.usersForTable.length / this.pageSize); |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
236 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
237 tableStyle() { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
238 return { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
239 table: true, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
240 "table-hover": true, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
241 "table-sm": this.isUserDetailsVisible, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
242 fadeIn: true, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
243 animated: true |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
244 }; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
245 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
246 userlistStyle() { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
247 return [ |
2534
bb5286acfee2
client: reduced spacings between and inside boxes and more compact main menu
Markus Kottlaender <markus@intevation.de>
parents:
2503
diff
changeset
|
248 "userlist mr-2", |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
249 { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
250 userlistsmall: this.isUserDetailsVisible, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
251 userlistextended: !this.isUserDetailsVisible |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
252 } |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
253 ]; |
5509
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
254 }, |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
255 checkboxObject() { |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
256 // Hide checkbox in case there are no deactivated users |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
257 if (this.users.some(u => !u.active)) { |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
258 return { |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
259 value: this.areSomeUsersHidden, |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
260 label: "Hide inactive users", |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
261 callback: () => { |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
262 this.changeDisplayingState(); |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
263 } |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
264 }; |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
265 } else { |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
266 return undefined; |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
267 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
268 } |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
269 }, |
5509
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
270 watch: { |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
271 users() { |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
272 this.filterUsers(); |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
273 } |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
274 }, |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
275 mounted() { |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
276 this.usersForTable = this.users; |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
277 }, |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
278 methods: { |
5510
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
279 getEditLabel(active) { |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
280 if (active) return this.$gettext("Edit user"); |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
281 return this.$gettext("Reactivate user"); |
b7792e8d5c62
Client: Improve users-table layout
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5509
diff
changeset
|
282 }, |
5509
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
283 changeDisplayingState() { |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
284 this.areSomeUsersHidden = !this.areSomeUsersHidden; |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
285 this.filterUsers(); |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
286 }, |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
287 filterUsers() { |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
288 if (this.areSomeUsersHidden) { |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
289 this.usersForTable = this.users.filter(u => u.active); |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
290 } else { |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
291 this.usersForTable = this.users; |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
292 } |
36cbf14b878a
Client: Add ability to list only active users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5507
diff
changeset
|
293 }, |
5348
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
294 toggleReport(user) { |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
295 HTTP.patch( |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
296 `/users/${user.user}`, |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
297 { |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
298 reports: user.reports |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
299 }, |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
300 { |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
301 headers: { |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
302 "X-Gemma-Auth": localStorage.getItem("token"), |
5350
59db9836e29a
fixed mimetype in toggleReport
Thomas Junk <thomas.junk@intevation.de>
parents:
5348
diff
changeset
|
303 "Content-type": "application/json; charset=UTF-8" |
5348
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
304 } |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
305 } |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
306 ) |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
307 .then(() => { |
5367
1695e17c5a83
Adds schedualbility for reports as an import.
Thomas Junk <thomas.junk@intevation.de>
parents:
5359
diff
changeset
|
308 if (this.currentUser && this.currentUser.user === user.user) { |
5351
4b367f7e39b4
Added messaging from overview to details.
Thomas Junk <thomas.junk@intevation.de>
parents:
5350
diff
changeset
|
309 this.reportToggled = !this.reportToggled; |
4b367f7e39b4
Added messaging from overview to details.
Thomas Junk <thomas.junk@intevation.de>
parents:
5350
diff
changeset
|
310 } |
5348
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
311 }) |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
312 .catch(error => { |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
313 let message = "Backend not reachable"; |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
314 if (error.response) { |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
315 const { status, data } = error.response; |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
316 message = `${status}: ${data.message || data}`; |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
317 } |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
318 displayError({ |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
319 title: this.$gettext("Backend Error"), |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
320 message: message |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
321 }); |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
322 user.reports = !user.reports; |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
323 }); |
45b03e8ca47e
Toggles in user overview and in details section as well established
Thomas Junk <thomas.junk@intevation.de>
parents:
4869
diff
changeset
|
324 }, |
2320
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
325 sendTestMail(user) { |
4632
2e47b32a389d
client: encode strings in url paths
Fadi Abbud <fadi.abbud@intevation.de>
parents:
2985
diff
changeset
|
326 HTTP.get("/testmail/" + encodeURIComponent(user), { |
2320
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
327 headers: { |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
328 "X-Gemma-Auth": localStorage.getItem("token"), |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
329 "Content-type": "text/xml; charset=UTF-8" |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
330 } |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
331 }) |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
332 .then(() => { |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
333 displayInfo({ |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
334 message: this.$gettext("Testmail sent") |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
335 }); |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
336 }) |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
337 .catch(error => { |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
338 this.loginFailed = true; |
4869
6b054b91d9b2
backend not reachable as error message etd. Login adjusted
Thomas Junk <thomas.junk@intevation.de>
parents:
4868
diff
changeset
|
339 let message = "Backend not reachable"; |
4868
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
340 if (error.response) { |
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
341 const { status, data } = error.response; |
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
342 message = `${status}: ${data.message || data}`; |
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
343 } |
2320
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
344 displayError({ |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
345 title: this.$gettext("Backend Error"), |
4868
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
346 message: message |
2320
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
347 }); |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
348 }); |
f2c67ebeaabb
moved test mail button to table
Markus Kottlaender <markus@intevation.de>
parents:
2290
diff
changeset
|
349 }, |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
350 nextPage() { |
2738
add2d47c2567
client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents:
2640
diff
changeset
|
351 if (this.page < this.pages) { |
add2d47c2567
client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents:
2640
diff
changeset
|
352 this.page += 1; |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
353 } |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
354 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
355 prevPage() { |
2738
add2d47c2567
client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents:
2640
diff
changeset
|
356 if (this.page > 0) { |
add2d47c2567
client: tables: implemented simple default sorting
Markus Kottlaender <markus@intevation.de>
parents:
2640
diff
changeset
|
357 this.page -= 1; |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
358 } |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
359 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
360 deleteUser(name) { |
2384
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
361 this.$store.commit("application/popup", { |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
362 icon: "trash", |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
363 title: this.$gettext("Delete User"), |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
364 content: |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
365 this.$gettext( |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
366 "Do you really want to delete the following user account:" |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
367 ) + |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
368 `<br> |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
369 <b>${name}</b>`, |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
370 confirm: { |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
371 label: this.$gettext("Delete"), |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
372 icon: "trash", |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
373 callback: () => { |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
374 this.$store |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
375 .dispatch("usermanagement/deleteUser", { name }) |
5507
279900b28b1b
Client: Notify user by successfully deleting/deactivating users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5506
diff
changeset
|
376 .then(response => { |
279900b28b1b
Client: Notify user by successfully deleting/deactivating users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5506
diff
changeset
|
377 displayInfo({ |
279900b28b1b
Client: Notify user by successfully deleting/deactivating users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5506
diff
changeset
|
378 message: |
279900b28b1b
Client: Notify user by successfully deleting/deactivating users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5506
diff
changeset
|
379 name + |
279900b28b1b
Client: Notify user by successfully deleting/deactivating users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5506
diff
changeset
|
380 // Exclude whitespaces from the string passed to "gettext" function |
279900b28b1b
Client: Notify user by successfully deleting/deactivating users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5506
diff
changeset
|
381 " " + |
279900b28b1b
Client: Notify user by successfully deleting/deactivating users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5506
diff
changeset
|
382 this.$gettext("user account") + |
279900b28b1b
Client: Notify user by successfully deleting/deactivating users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5506
diff
changeset
|
383 " " + |
279900b28b1b
Client: Notify user by successfully deleting/deactivating users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5506
diff
changeset
|
384 response.data.action + |
279900b28b1b
Client: Notify user by successfully deleting/deactivating users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5506
diff
changeset
|
385 " " + |
279900b28b1b
Client: Notify user by successfully deleting/deactivating users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5506
diff
changeset
|
386 this.$gettext("successfully") |
279900b28b1b
Client: Notify user by successfully deleting/deactivating users
Fadi Abbud <fadi.abbud@intevation.de>
parents:
5506
diff
changeset
|
387 }); |
2384
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
388 this.$store |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
389 .dispatch("usermanagement/loadUsers") |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
390 .catch(error => { |
4869
6b054b91d9b2
backend not reachable as error message etd. Login adjusted
Thomas Junk <thomas.junk@intevation.de>
parents:
4868
diff
changeset
|
391 let message = "Backend not reachable"; |
4868
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
392 if (error.response) { |
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
393 const { status, data } = error.response; |
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
394 message = `${status}: ${data.message || data}`; |
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
395 } |
2384
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
396 displayError({ |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
397 title: this.$gettext("Backend Error"), |
4868
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
398 message: message |
2384
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
399 }); |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
400 }); |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
401 }) |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
402 .catch(error => { |
4869
6b054b91d9b2
backend not reachable as error message etd. Login adjusted
Thomas Junk <thomas.junk@intevation.de>
parents:
4868
diff
changeset
|
403 let message = "Backend not reachable"; |
4868
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
404 if (error.response) { |
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
405 const { status, data } = error.response; |
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
406 message = `${status}: ${data.message || data}`; |
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
407 } |
2384
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
408 displayError({ |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
409 title: this.$gettext("Backend Error"), |
4868
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
410 message: message |
2384
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
411 }); |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
412 }); |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
413 } |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
414 }, |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
415 cancel: { |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
416 label: this.$gettext("Cancel"), |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
417 icon: "times" |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
418 } |
c06b001dc26b
client: improved popup implementation
Markus Kottlaender <markus@intevation.de>
parents:
2330
diff
changeset
|
419 }); |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
420 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
421 addUser() { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
422 this.$store.commit("usermanagement/clearCurrentUser"); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
423 this.$store.commit("usermanagement/setUserDetailsVisible"); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
424 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
425 selectUser(name) { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
426 const user = this.$store.getters["usermanagement/getUserByName"](name); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
427 this.$store.commit("usermanagement/setCurrentUser", user); |
1299
2738a6ae9ad8
fontawesome 4 -> 5
Markus Kottlaender <markus@intevation.de>
parents:
1272
diff
changeset
|
428 }, |
2738a6ae9ad8
fontawesome 4 -> 5
Markus Kottlaender <markus@intevation.de>
parents:
1272
diff
changeset
|
429 roleIcon(role) { |
2738a6ae9ad8
fontawesome 4 -> 5
Markus Kottlaender <markus@intevation.de>
parents:
1272
diff
changeset
|
430 if (role === "sys_admin") return "star"; |
2738a6ae9ad8
fontawesome 4 -> 5
Markus Kottlaender <markus@intevation.de>
parents:
1272
diff
changeset
|
431 if (role === "waterway_admin") return ["fab", "adn"]; |
2738a6ae9ad8
fontawesome 4 -> 5
Markus Kottlaender <markus@intevation.de>
parents:
1272
diff
changeset
|
432 return "user"; |
1674
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
433 }, |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
434 roleLabel(role) { |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
435 const labels = { |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
436 sys_admin: this.$gettext("System-Administrator"), |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
437 waterway_admin: this.$gettext("Waterway Admin"), |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
438 waterway_user: this.$gettext("Waterway User") |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
439 }; |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
440 return labels[role]; |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
441 } |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
442 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
443 beforeRouteEnter(to, from, next) { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
444 store |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
445 .dispatch("usermanagement/loadUsers") |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
446 .then(next) |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
447 .catch(error => { |
4869
6b054b91d9b2
backend not reachable as error message etd. Login adjusted
Thomas Junk <thomas.junk@intevation.de>
parents:
4868
diff
changeset
|
448 let message = "Backend not reachable"; |
4868
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
449 if (error.response) { |
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
450 const { status, data } = error.response; |
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
451 message = `${status}: ${data.message || data}`; |
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
452 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
453 displayError({ |
1460 | 454 title: this.$gettext("Backend Error"), |
4868
008bc1ae8897
exception handling
Thomas Junk <thomas.junk@intevation.de>
parents:
4632
diff
changeset
|
455 message: message |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
456 }); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
457 }); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
458 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
459 beforeRouteLeave(to, from, next) { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
460 store.commit("usermanagement/clearCurrentUser"); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
461 store.commit("usermanagement/setUserDetailsInvisible"); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
462 next(); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
463 } |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
464 }; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
465 </script> |