mirror of
https://github.com/wekan/wekan.git
synced 2026-01-08 10:38:50 +01:00
Admin Panel/People: 1) Allow edit user that does not have email address. 2) When creating new user, require username and email address, and save also fullname. 3) Some in progress code for deleting user, that does not work correctly yet, so deleting user is not enabled yet. Thanks to airtraxx and xet7. Related #3396
227 lines
6.7 KiB
Text
227 lines
6.7 KiB
Text
template(name="people")
|
|
.setting-content
|
|
unless currentUser.isAdmin
|
|
| {{_ 'error-notAuthorized'}}
|
|
else
|
|
.content-title.ext-box
|
|
.ext-box-left
|
|
span
|
|
i.fa.fa-users
|
|
| {{_ 'people'}}
|
|
input#searchInput(placeholder="{{_ 'search'}}")
|
|
button#searchButton
|
|
i.fa.fa-search
|
|
| {{_ 'search'}}
|
|
.ext-box-right
|
|
span {{_ 'people-number'}} #{peopleNumber}
|
|
.content-body
|
|
.side-menu
|
|
ul
|
|
li.active
|
|
a.js-setting-menu(data-id="people-setting")
|
|
i.fa.fa-users
|
|
| {{_ 'people'}}
|
|
.main-body
|
|
if loading.get
|
|
+spinner
|
|
else if people.get
|
|
+peopleGeneral
|
|
|
|
template(name="peopleGeneral")
|
|
table
|
|
tbody
|
|
tr
|
|
th {{_ 'username'}}
|
|
th {{_ 'fullname'}}
|
|
th {{_ 'admin'}}
|
|
th {{_ 'email'}}
|
|
th {{_ 'verified'}}
|
|
th {{_ 'createdAt'}}
|
|
th {{_ 'active'}}
|
|
th {{_ 'authentication-method'}}
|
|
th
|
|
+newUserRow
|
|
each user in peopleList
|
|
+peopleRow(userId=user._id)
|
|
|
|
template(name="newUserRow")
|
|
a.new-user
|
|
i.fa.fa-edit
|
|
| {{_ 'new'}}
|
|
|
|
template(name="peopleRow")
|
|
tr
|
|
if userData.loginDisabled
|
|
td.username <s>{{ userData.username }}</s>
|
|
else
|
|
td.username {{ userData.username }}
|
|
if userData.loginDisabled
|
|
td <s>{{ userData.profile.fullname }}</s>
|
|
else
|
|
td {{ userData.profile.fullname }}
|
|
if userData.loginDisabled
|
|
td
|
|
if userData.isAdmin
|
|
| <s>{{_ 'yes'}}</s>
|
|
else
|
|
| <s>{{_ 'no'}}</s>
|
|
else
|
|
td
|
|
if userData.isAdmin
|
|
| {{_ 'yes'}}
|
|
else
|
|
| {{_ 'no'}}
|
|
if userData.loginDisabled
|
|
td <s>{{ userData.emails.[0].address }}</s>
|
|
else
|
|
td {{ userData.emails.[0].address }}
|
|
if userData.loginDisabled
|
|
td
|
|
if userData.emails.[0].verified
|
|
| <s>{{_ 'yes'}}</s>
|
|
else
|
|
| <s>{{_ 'no'}}</s>
|
|
else
|
|
td
|
|
if userData.emails.[0].verified
|
|
| {{_ 'yes'}}
|
|
else
|
|
| {{_ 'no'}}
|
|
if userData.loginDisabled
|
|
td <s>{{ moment userData.createdAt 'LLL' }}</s>
|
|
else
|
|
td {{ moment userData.createdAt 'LLL' }}
|
|
td
|
|
if userData.loginDisabled
|
|
| {{_ 'no'}}
|
|
else
|
|
| {{_ 'yes'}}
|
|
if userData.loginDisabled
|
|
td <s>{{_ userData.authenticationMethod }}</s>
|
|
else
|
|
td {{_ userData.authenticationMethod }}
|
|
td
|
|
a.edit-user
|
|
i.fa.fa-edit
|
|
| {{_ 'edit'}}
|
|
a.more-settings-user
|
|
i.fa.fa-ellipsis-h
|
|
|
|
template(name="editUserPopup")
|
|
form
|
|
label.hide.userId(type="text" value=user._id)
|
|
label
|
|
| {{_ 'fullname'}}
|
|
input.js-profile-fullname(type="text" value=user.profile.fullname required)
|
|
label
|
|
| {{_ 'username'}}
|
|
span.error.hide.username-taken
|
|
| {{_ 'error-username-taken'}}
|
|
if isLdap
|
|
input.js-profile-username(type="text" value=user.username readonly)
|
|
else
|
|
input.js-profile-username(type="text" value=user.username required)
|
|
label
|
|
| {{_ 'email'}}
|
|
span.error.hide.email-taken
|
|
| {{_ 'error-email-taken'}}
|
|
if isLdap
|
|
input.js-profile-email(type="email" value="{{user.emails.[0].address}}" readonly)
|
|
else
|
|
input.js-profile-email(type="email" value="{{user.emails.[0].address}}" required)
|
|
label
|
|
| {{_ 'admin'}}
|
|
select.select-role.js-profile-isadmin
|
|
option(value="false") {{_ 'no'}}
|
|
option(value="true" selected="{{user.isAdmin}}") {{_ 'yes'}}
|
|
label
|
|
| {{_ 'active'}}
|
|
select.select-active.js-profile-isactive
|
|
option(value="false") {{_ 'yes'}}
|
|
option(value="true" selected="{{user.loginDisabled}}") {{_ 'no'}}
|
|
label
|
|
| {{_ 'authentication-type'}}
|
|
select.select-authenticationMethod.js-authenticationMethod
|
|
each authentications
|
|
if isSelected value
|
|
option(value="{{value}}" selected) {{_ value}}
|
|
else
|
|
option(value="{{value}}") {{_ value}}
|
|
hr
|
|
label
|
|
| {{_ 'password'}}
|
|
input.js-profile-password(type="password")
|
|
div.buttonsContainer
|
|
input.primary.wide(type="submit" value="{{_ 'save'}}")
|
|
|
|
template(name="newUserPopup")
|
|
form
|
|
//label.hide.userId(type="text" value=user._id)
|
|
label
|
|
| {{_ 'fullname'}}
|
|
input.js-profile-fullname(type="text" value="" required)
|
|
label
|
|
| {{_ 'username'}}
|
|
span.error.hide.username-taken
|
|
| {{_ 'error-username-taken'}}
|
|
//if isLdap
|
|
// input.js-profile-username(type="text" value=user.username readonly)
|
|
//else
|
|
input.js-profile-username(type="text" value="" required)
|
|
label
|
|
| {{_ 'email'}}
|
|
span.error.hide.email-taken
|
|
| {{_ 'error-email-taken'}}
|
|
//if isLdap
|
|
// input.js-profile-email(type="email" value="{{user.emails.[0].address}}" readonly)
|
|
//else
|
|
input.js-profile-email(type="email" value="" required)
|
|
label
|
|
| {{_ 'admin'}}
|
|
select.select-role.js-profile-isadmin
|
|
option(value="false" selected="selected") {{_ 'no'}}
|
|
option(value="true") {{_ 'yes'}}
|
|
label
|
|
| {{_ 'active'}}
|
|
select.select-active.js-profile-isactive
|
|
option(value="false" selected="selected") {{_ 'yes'}}
|
|
option(value="true") {{_ 'no'}}
|
|
label
|
|
| {{_ 'authentication-type'}}
|
|
select.select-authenticationMethod.js-authenticationMethod
|
|
each authentications
|
|
if isSelected value
|
|
option(value="{{value}}" selected) {{_ value}}
|
|
else
|
|
option(value="{{value}}") {{_ value}}
|
|
hr
|
|
label
|
|
| {{_ 'password'}}
|
|
input.js-profile-password(type="password" required)
|
|
div.buttonsContainer
|
|
input.primary.wide(type="submit" value="{{_ 'save'}}")
|
|
|
|
template(name="settingsUserPopup")
|
|
ul.pop-over-list
|
|
li
|
|
a.impersonate-user
|
|
i.fa.fa-user
|
|
| {{_ 'impersonate-user'}}
|
|
// Delete is not enabled yet, because it does leave empty user avatars
|
|
// to boards: boards members, card members and assignees have
|
|
// empty users. See:
|
|
// - wekan/client/components/settings/peopleBody.jade deleteButton
|
|
// - wekan/client/components/settings/peopleBody.js deleteButton
|
|
// - wekan/client/components/sidebar/sidebar.js Popup.afterConfirm('removeMember'
|
|
// that does now remove member from board, card members and assignees correctly,
|
|
// but that should be used to remove user from all boards similarly
|
|
// - wekan/models/users.js Delete is not enabled
|
|
//li
|
|
// br
|
|
// br
|
|
// hr
|
|
//li
|
|
// form
|
|
// label.hide.userId(type="text" value=user._id)
|
|
// div.buttonsContainer
|
|
// input#deleteButton.card-details-red.right.wide(type="button" value="{{_ 'delete'}}")
|