Mercurial > gemma
annotate client/src/components/usermanagement/Usermanagement.vue @ 2154:a08e0f532304
staging: improve UI
author | Thomas Junk <thomas.junk@intevation.de> |
---|---|
date | Fri, 08 Feb 2019 12:30:22 +0100 |
parents | af136b1a854e |
children | 92649a0537fa |
rev | line source |
---|---|
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
1 <template> |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
2 <div class="main d-flex flex-row"> |
1606
a4d8f284db93
spacer in admin interface added
Thomas Junk <thomas.junk@intevation.de>
parents:
1604
diff
changeset
|
3 <Spacer></Spacer> |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
4 <div class="d-flex content flex-column"> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
5 <div class="d-flex flex-row"> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
6 <div :class="userlistStyle"> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
7 <div class="card"> |
1480 | 8 <h6 |
9 class="mb-0 py-2 px-3 border-bottom d-flex text-info align-items-center" | |
10 > | |
11 <font-awesome-icon | |
12 icon="users-cog" | |
1517
6eec1c324a64
font-awesome fixed width icons
Thomas Junk <thomas.junk@intevation.de>
parents:
1480
diff
changeset
|
13 class="mr-2 fa-fw" |
1480 | 14 ></font-awesome-icon> |
1455
33dda08d67be
unified layout for adminsection
Thomas Junk <thomas.junk@intevation.de>
parents:
1448
diff
changeset
|
15 <translate class="headline">Users</translate> |
33dda08d67be
unified layout for adminsection
Thomas Junk <thomas.junk@intevation.de>
parents:
1448
diff
changeset
|
16 </h6> |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
17 <div class="card-body"> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
18 <table id="datatable" :class="tableStyle"> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
19 <thead> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
20 <tr> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
21 <th scope="col" @click="sortBy('user')"> |
1480 | 22 <span |
23 >Username | |
24 <font-awesome-icon | |
25 v-if="sortCriterion == 'user'" | |
26 icon="angle-down" | |
27 ></font-awesome-icon> | |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
28 </span> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
29 </th> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
30 <th scope="col" @click="sortBy('country')"> |
1480 | 31 <span |
32 >Country | |
33 <font-awesome-icon | |
34 v-if="sortCriterion == 'country'" | |
35 icon="angle-down" | |
36 ></font-awesome-icon> | |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
37 </span> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
38 </th> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
39 <th scope="col" @click="sortBy('email')"> |
1480 | 40 <span |
41 >Email | |
42 <font-awesome-icon | |
43 v-if="sortCriterion == 'email'" | |
44 icon="angle-down" | |
45 ></font-awesome-icon> | |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
46 </span> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
47 </th> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
48 <th scope="col" @click="sortBy('role')"> |
1480 | 49 <span |
50 >Role | |
51 <font-awesome-icon | |
52 v-if="sortCriterion == 'role'" | |
53 icon="angle-down" | |
54 ></font-awesome-icon> | |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
55 </span> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
56 </th> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
57 <th scope="col"></th> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
58 </tr> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
59 </thead> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
60 <tbody> |
2122
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
61 <tr v-for="user in users" :key="user.user"> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
62 <td @click="selectUser(user.user)">{{ user.user }}</td> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
63 <td @click="selectUser(user.user)">{{ user.country }}</td> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
64 <td @click="selectUser(user.user)">{{ user.email }}</td> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
65 <td @click="selectUser(user.user)"> |
1480 | 66 <font-awesome-icon |
1674
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
67 v-tooltip="roleLabel(user.role)" |
1480 | 68 :icon="roleIcon(user.role)" |
69 ></font-awesome-icon> | |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
70 </td> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
71 <td> |
1480 | 72 <font-awesome-icon |
73 icon="trash" | |
2124 | 74 @click=" |
75 showDeleteUserPrompt = true; | |
76 userToDelete = user.user; | |
77 " | |
1480 | 78 ></font-awesome-icon> |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
79 </td> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
80 </tr> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
81 </tbody> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
82 </table> |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
83 </div> |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
84 <div class="d-flex mx-auto align-items-center"> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
85 <button |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
86 @click="prevPage" |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
87 v-if="this.currentPage !== 1" |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
88 class="mr-2 btn btn-sm btn-light align-self-center" |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
89 > |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
90 <font-awesome-icon icon="angle-left"></font-awesome-icon> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
91 </button> |
1480 | 92 {{ this.currentPage }} / {{ this.pages }} |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
93 <button |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
94 @click="nextPage" |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
95 v-if="this.currentPage !== this.pages" |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
96 class="ml-2 btn btn-sm btn-light align-self-center" |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
97 > |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
98 <font-awesome-icon icon="angle-right"></font-awesome-icon> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
99 </button> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
100 </div> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
101 <div class="mr-3 pb-3"> |
1542 | 102 <button @click="addUser" class="btn btn-info addbutton shadow-sm"> |
1416
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1362
diff
changeset
|
103 <translate>Add User</translate> |
3af7ad9717e2
Client: add a set fo marked translation
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1362
diff
changeset
|
104 </button> |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
105 </div> |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
106 </div> |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
107 </div> |
1529 | 108 <Userdetail |
109 class="d-flex userdetails" | |
110 v-if="isUserDetailsVisible" | |
111 ></Userdetail> | |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
112 </div> |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
113 </div> |
2124 | 114 |
2122
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
115 <div |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
116 :class="[ |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
117 'box popup ui-element rounded bg-white', |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
118 { show: showDeleteUserPrompt } |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
119 ]" |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
120 > |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
121 <div> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
122 <h6 class="mb-0 py-2 px-3 border-bottom d-flex align-items-center"> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
123 <font-awesome-icon icon="trash" class="mr-2"></font-awesome-icon> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
124 <translate>Delete user</translate> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
125 <font-awesome-icon |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
126 icon="times" |
2154
a08e0f532304
staging: improve UI
Thomas Junk <thomas.junk@intevation.de>
parents:
2124
diff
changeset
|
127 class="ml-auto text-muted pointer" |
2124 | 128 @click="showDeleteUserPrompt = false" |
2122
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
129 ></font-awesome-icon> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
130 </h6> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
131 <div class="p-3 text-left"> |
2124 | 132 <translate class="text-center d-block" |
133 >Do you really want to delete the following user account:</translate | |
134 > | |
2122
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
135 <h5 class="mt-3 text-center">{{ userToDelete }}</h5> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
136 </div> |
2124 | 137 <div |
138 class="py-2 px-3 border-top d-flex align-items-center justify-content-between" | |
139 > | |
2122
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
140 <button |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
141 class="btn btn-sm btn-warning" |
2124 | 142 @click="showDeleteUserPrompt = false" |
143 > | |
2122
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
144 no |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
145 </button> |
2124 | 146 <button class="btn btn-sm btn-info" @click="deleteUser(userToDelete)"> |
2122
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
147 yes |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
148 </button> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
149 </div> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
150 </div> |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
151 </div> |
1361
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
152 </div> |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
153 </template> |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
154 |
1674
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
155 <style lang="scss"> |
1613
f2d24dceecc7
refac: cleanup import paths
Thomas Junk <thomas.junk@intevation.de>
parents:
1606
diff
changeset
|
156 @import "@/assets/tooltip.scss"; |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
157 |
1542 | 158 .addbutton { |
159 position: absolute; | |
160 bottom: $offset; | |
161 right: $offset; | |
162 } | |
163 | |
1529 | 164 .content { |
165 width: 100%; | |
166 } | |
167 | |
168 .userdetails { | |
169 width: 50%; | |
170 } | |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
171 |
1448
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
172 .main { |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
173 height: 100vh; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
174 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
175 |
1448
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
176 .icon { |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
177 font-size: large; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
178 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
179 |
1448
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
180 .userlist { |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
181 min-width: 520px; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
182 height: 100%; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
183 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
184 |
1448
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
185 .userlistsmall { |
1529 | 186 width: 100%; |
1448
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
187 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
188 |
1448
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
189 .userlistextended { |
1529 | 190 width: 100%; |
1448
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
191 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
192 |
1448
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
193 .table { |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
194 width: 90% !important; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
195 margin: auto; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
196 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
197 |
1448
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
198 .table th { |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
199 cursor: pointer; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
200 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
201 |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
202 .table th, |
1448
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
203 td { |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
204 font-size: $smaller; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
205 border-top: 0px !important; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
206 text-align: left; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
207 padding: $small-offset !important; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
208 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
209 |
1448
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
210 .table td { |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
211 font-size: $smaller; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
212 cursor: pointer; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
213 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
214 |
1448
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
215 tr span { |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
216 display: flex; |
ef388dcbb946
refac: reverting unecessary port from scss to sass
Thomas Junk <thomas.junk@intevation.de>
parents:
1416
diff
changeset
|
217 } |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
218 </style> |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
219 |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
220 <script> |
1362
ca33ad696594
remove the first empyty lines
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1361
diff
changeset
|
221 /* 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
|
222 * 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
|
223 * |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
224 * SPDX-License-Identifier: AGPL-3.0-or-later |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
225 * 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
|
226 * |
ea3a89a1813a
remove trailing whitespace, add headers for Makefile, add the missed authors
Fadi Abbud <fadi.abbud@intevation.de>
parents:
1299
diff
changeset
|
227 * Copyright (C) 2018 by via donau |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
228 * – Österreichische Wasserstraßen-Gesellschaft mbH |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
229 * 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
|
230 * |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
231 * Author(s): |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
232 * Thomas Junk <thomas.junk@intevation.de> |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
233 */ |
1613
f2d24dceecc7
refac: cleanup import paths
Thomas Junk <thomas.junk@intevation.de>
parents:
1606
diff
changeset
|
234 import store from "@/store"; |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
235 import { mapGetters, mapState } from "vuex"; |
1613
f2d24dceecc7
refac: cleanup import paths
Thomas Junk <thomas.junk@intevation.de>
parents:
1606
diff
changeset
|
236 import { displayError } from "@/lib/errors.js"; |
1674
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
237 import Vue from "vue"; |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
238 import { VTooltip, VPopover, VClosePopover } from "v-tooltip"; |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
239 |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
240 Vue.directive("tooltip", VTooltip); |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
241 Vue.directive("close-popover", VClosePopover); |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
242 Vue.component("v-popover", VPopover); |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
243 |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
244 export default { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
245 name: "userview", |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
246 data() { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
247 return { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
248 sortCriterion: "user", |
1604 | 249 pageSize: 20, |
2122
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
250 currentPage: 1, |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
251 userToDelete: "", |
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
252 showDeleteUserPrompt: false |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
253 }; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
254 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
255 components: { |
1669
16fb9667ddf8
refac: use dynamic imports for components
Thomas Junk <thomas.junk@intevation.de>
parents:
1613
diff
changeset
|
256 Userdetail: () => import("./Userdetail"), |
16fb9667ddf8
refac: use dynamic imports for components
Thomas Junk <thomas.junk@intevation.de>
parents:
1613
diff
changeset
|
257 Spacer: () => import("@/components/Spacer") |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
258 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
259 computed: { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
260 ...mapGetters("usermanagement", ["isUserDetailsVisible"]), |
1455
33dda08d67be
unified layout for adminsection
Thomas Junk <thomas.junk@intevation.de>
parents:
1448
diff
changeset
|
261 ...mapState("application", ["showSidebar"]), |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
262 users() { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
263 let users = [...this.$store.getters["usermanagement/users"]]; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
264 users.sort((a, b) => { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
265 if ( |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
266 a[this.sortCriterion].toLowerCase() < |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
267 b[this.sortCriterion].toLowerCase() |
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 return -1; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
270 if ( |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
271 a[this.sortCriterion].toLowerCase() > |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
272 b[this.sortCriterion].toLowerCase() |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
273 ) |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
274 return 1; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
275 return 0; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
276 }); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
277 const start = (this.currentPage - 1) * this.pageSize; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
278 return users.slice(start, start + this.pageSize); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
279 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
280 pages() { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
281 let users = [...this.$store.getters["usermanagement/users"]]; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
282 return Math.ceil(users.length / this.pageSize); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
283 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
284 tableStyle() { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
285 return { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
286 table: true, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
287 "table-hover": true, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
288 "table-sm": this.isUserDetailsVisible, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
289 fadeIn: true, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
290 animated: true |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
291 }; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
292 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
293 userlistStyle() { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
294 return [ |
1455
33dda08d67be
unified layout for adminsection
Thomas Junk <thomas.junk@intevation.de>
parents:
1448
diff
changeset
|
295 "userlist mt-3 mr-3 shadow-xs", |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
296 { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
297 userlistsmall: this.isUserDetailsVisible, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
298 userlistextended: !this.isUserDetailsVisible |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
299 } |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
300 ]; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
301 } |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
302 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
303 methods: { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
304 tween() {}, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
305 nextPage() { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
306 if (this.currentPage < this.pages) { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
307 document.querySelector("#datatable").classList.add("fadeOut"); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
308 setTimeout(() => { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
309 document.querySelector("#datatable").classList.remove("fadeOut"); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
310 this.currentPage += 1; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
311 }, 10); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
312 } |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
313 return; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
314 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
315 prevPage() { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
316 if (this.currentPage > 0) { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
317 document.querySelector("#datatable").classList.add("fadeOut"); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
318 setTimeout(() => { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
319 document.querySelector("#datatable").classList.remove("fadeOut"); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
320 this.currentPage -= 1; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
321 }, 10); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
322 } |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
323 return; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
324 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
325 sortBy(criterion) { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
326 this.sortCriterion = criterion; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
327 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
328 deleteUser(name) { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
329 this.$store |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
330 .dispatch("usermanagement/deleteUser", { name: name }) |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
331 .then(() => { |
2122
2cec685c6519
show confirm dialog when deleting user
Markus Kottlaender <markus@intevation.de>
parents:
2115
diff
changeset
|
332 this.showDeleteUserPrompt = false; |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
333 this.submitted = false; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
334 this.$store.dispatch("usermanagement/loadUsers").catch(error => { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
335 const { status, data } = error.response; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
336 displayError({ |
1460 | 337 title: this.$gettext("Backend Error"), |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
338 message: `${status}: ${data.message || data}` |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
339 }); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
340 }); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
341 }) |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
342 .catch(error => { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
343 const { status, data } = error.response; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
344 displayError({ |
1460 | 345 title: this.$gettext("Backend Error"), |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
346 message: `${status}: ${data.message || data}` |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
347 }); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
348 }); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
349 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
350 addUser() { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
351 this.$store.commit("usermanagement/clearCurrentUser"); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
352 this.$store.commit("usermanagement/setUserDetailsVisible"); |
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 selectUser(name) { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
355 const user = this.$store.getters["usermanagement/getUserByName"](name); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
356 this.$store.commit("usermanagement/setCurrentUser", user); |
1299
2738a6ae9ad8
fontawesome 4 -> 5
Markus Kottlaender <markus@intevation.de>
parents:
1272
diff
changeset
|
357 }, |
2738a6ae9ad8
fontawesome 4 -> 5
Markus Kottlaender <markus@intevation.de>
parents:
1272
diff
changeset
|
358 roleIcon(role) { |
2738a6ae9ad8
fontawesome 4 -> 5
Markus Kottlaender <markus@intevation.de>
parents:
1272
diff
changeset
|
359 if (role === "sys_admin") return "star"; |
2738a6ae9ad8
fontawesome 4 -> 5
Markus Kottlaender <markus@intevation.de>
parents:
1272
diff
changeset
|
360 if (role === "waterway_admin") return ["fab", "adn"]; |
2738a6ae9ad8
fontawesome 4 -> 5
Markus Kottlaender <markus@intevation.de>
parents:
1272
diff
changeset
|
361 return "user"; |
1674
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
362 }, |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
363 roleLabel(role) { |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
364 const labels = { |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
365 sys_admin: this.$gettext("System-Administrator"), |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
366 waterway_admin: this.$gettext("Waterway Admin"), |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
367 waterway_user: this.$gettext("Waterway User") |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
368 }; |
54f7493e5d36
fix: Tooltips are working again
Thomas Junk <thomas.junk@intevation.de>
parents:
1669
diff
changeset
|
369 return labels[role]; |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
370 } |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
371 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
372 beforeRouteEnter(to, from, next) { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
373 store |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
374 .dispatch("usermanagement/loadUsers") |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
375 .then(next) |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
376 .catch(error => { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
377 const { status, data } = error.response; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
378 displayError({ |
1460 | 379 title: this.$gettext("Backend Error"), |
1272
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
380 message: `${status}: ${data}` |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
381 }); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
382 }); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
383 }, |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
384 beforeRouteLeave(to, from, next) { |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
385 store.commit("usermanagement/clearCurrentUser"); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
386 store.commit("usermanagement/setUserDetailsInvisible"); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
387 next(); |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
388 } |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
389 }; |
bc55ffaeb639
cleaned up client/src directory
Markus Kottlaender <markus@intevation.de>
parents:
diff
changeset
|
390 </script> |