mirror of
https://github.com/documize/community.git
synced 2025-08-05 13:35:25 +02:00
user admin UX
This commit is contained in:
parent
79531e01b3
commit
95bb440a65
9 changed files with 194 additions and 315 deletions
|
@ -1,171 +1,141 @@
|
|||
<div class="page-customize">
|
||||
<div class="user-admin">
|
||||
<div class="form-header">
|
||||
<div class="title">User Management</div>
|
||||
<div class="tip">Set basic information, passwords and permissions for {{users.length}} users</div>
|
||||
</div>
|
||||
|
||||
<table class="basic-table">
|
||||
<thead>
|
||||
<div class="view-customize mb-5">
|
||||
<h3>Users</h3>
|
||||
<table class="table table-hover table-responsive user-table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>{{input type="text" class="form-control" placeholder="filter users" value=filter}}</th>
|
||||
<th class="no-width">Add Space</th>
|
||||
<th class="no-width">View Users</th>
|
||||
<th class="no-width">Admin</th>
|
||||
<th class="no-width">Active</th>
|
||||
<th class="no-width">
|
||||
{{#if hasSelectedUsers}}
|
||||
<button id="bulk-delete-users" type="button" class="btn btn-danger btn-sm">Delete</button>
|
||||
{{#dropdown-dialog target="bulk-delete-users" position="bottom right" button="Delete" color="flat-red" onAction=(action 'onBulkDelete')}}
|
||||
<p>Are you sure you want to delete selected users?</p>
|
||||
{{/dropdown-dialog}}
|
||||
{{/if}}
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{#each filteredUsers key="id" as |user|}}
|
||||
<tr>
|
||||
<th class="">
|
||||
<div class="input-inline input-transparent">
|
||||
{{focus-input type="text" placeholder="< type here to filter users >" value=filter}}
|
||||
<td class="{{unless user.active 'inactive-user'}} {{if user.admin 'admin-user'}}">
|
||||
<div class="d-inline-block align-top">
|
||||
{{#if user.me}}
|
||||
<i class="material-icons color-gray">check_box_outline_blank</i>
|
||||
{{else if user.selected}}
|
||||
<i class="material-icons checkbox" {{action 'toggleSelect' user}}>check_box</i>
|
||||
{{else}}
|
||||
<i class="material-icons checkbox" {{action 'toggleSelect' user}}>check_box_outline_blank</i>
|
||||
{{/if}}
|
||||
</div>
|
||||
</th>
|
||||
<th class="no-width">Add Space</th>
|
||||
<th class="no-width">View Users</th>
|
||||
<th class="no-width">Admin</th>
|
||||
<th class="no-width">Active</th>
|
||||
<th class="no-width">
|
||||
{{#if hasSelectedUsers}}
|
||||
<div class="round-button round-button-small button-red" id="bulk-delete-users">
|
||||
<div class="d-inline-block">
|
||||
<div class="name d-inline-block">{{ user.fullname }}</div>
|
||||
<div class="email">{{ user.email }}</div>
|
||||
</div>
|
||||
</td>
|
||||
<td class="no-width text-center">
|
||||
{{#if user.editor}}
|
||||
<i class="material-icons checkbox" {{action 'toggleEditor' user.id}}>check_box</i>
|
||||
{{else}}
|
||||
<i class="material-icons checkbox" {{action 'toggleEditor' user.id}}>check_box_outline_blank</i>
|
||||
{{/if}}
|
||||
</td>
|
||||
<td class="no-width text-center">
|
||||
{{#if user.viewUsers}}
|
||||
<i class="material-icons checkbox" {{action 'toggleUsers' user.id}}>check_box</i>
|
||||
{{else}}
|
||||
<i class="material-icons checkbox" {{action 'toggleUsers' user.id}}>check_box_outline_blank</i>
|
||||
{{/if}}
|
||||
</td>
|
||||
<td class="no-width text-center">
|
||||
{{#if user.me}}
|
||||
<i class="material-icons color-gray">check_box</i>
|
||||
{{else if user.admin}}
|
||||
<i class="material-icons checkbox" {{action 'toggleAdmin' user.id}}>check_box</i>
|
||||
{{else}}
|
||||
<i class="material-icons checkbox" {{action 'toggleAdmin' user.id}}>check_box_outline_blank</i>
|
||||
{{/if}}
|
||||
</td>
|
||||
<td class="no-width text-center">
|
||||
{{#if user.me}}
|
||||
<i class="material-icons color-gray">check_box</i>
|
||||
{{else if user.active}}
|
||||
<i class="material-icons checkbox" {{action 'toggleActive' user.id}}>check_box</i>
|
||||
{{else}}
|
||||
<i class="material-icons checkbox" {{action 'toggleActive' user.id}}>check_box_outline_blank</i>
|
||||
{{/if}}
|
||||
</td>
|
||||
<td class="no-width text-center">
|
||||
{{#if user.me}}
|
||||
<div class="edit-button-{{user.id}} button-icon-gray" title="Edit" {{action "onShowEdit" user.id}}>
|
||||
<i class="material-icons">edit</i>
|
||||
</div>
|
||||
{{else}}
|
||||
<div class="edit-button-{{user.id}} button-icon-gray" title="Edit" {{action "onShowEdit" user.id}}>
|
||||
<i class="material-icons">edit</i>
|
||||
</div>
|
||||
<div class="button-icon-gap"></div>
|
||||
<div class="delete-button-{{user.id}} button-icon-danger" title="Delete" {{action "onShowDelete" user.id}}>
|
||||
<i class="material-icons">delete</i>
|
||||
</div>
|
||||
{{#dropdown-dialog target="bulk-delete-users" position="bottom right" button="Delete" color="flat-red" onAction=(action 'onBulkDelete')}}
|
||||
<p>Are you sure you want to delete selected users?</p>
|
||||
{{/dropdown-dialog}}
|
||||
{{/if}}
|
||||
</th>
|
||||
</td>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{{#each users key="id" as |user|}}
|
||||
<tr>
|
||||
<td class="{{unless user.active 'inactive-user'}} {{if user.admin 'admin-user'}}">
|
||||
<div class="selector pull-left">
|
||||
{{#if user.me}}
|
||||
<i class="material-icons color-gray">check_box_outline_blank</i>
|
||||
{{else if user.selected}}
|
||||
<i class="material-icons checkbox" {{action 'toggleSelect' user}}>check_box</i>
|
||||
{{else}}
|
||||
<i class="material-icons checkbox" {{action 'toggleSelect' user}}>check_box_outline_blank</i>
|
||||
{{/if}}
|
||||
</div>
|
||||
<div class="name">{{ user.fullname }}</div>
|
||||
<div class="email">{{ user.email }}</div>
|
||||
</td>
|
||||
<td class="no-width text-center">
|
||||
{{#if user.editor}}
|
||||
<i class="material-icons checkbox" {{action 'toggleEditor' user.id}}>check_box</i>
|
||||
{{else}}
|
||||
<i class="material-icons checkbox" {{action 'toggleEditor' user.id}}>check_box_outline_blank</i>
|
||||
{{/if}}
|
||||
</td>
|
||||
<td class="no-width text-center">
|
||||
{{#if user.viewUsers}}
|
||||
<i class="material-icons checkbox" {{action 'toggleUsers' user.id}}>check_box</i>
|
||||
{{else}}
|
||||
<i class="material-icons checkbox" {{action 'toggleUsers' user.id}}>check_box_outline_blank</i>
|
||||
{{/if}}
|
||||
</td>
|
||||
<td class="no-width text-center">
|
||||
{{#if user.me}}
|
||||
<i class="material-icons color-gray">check_box</i>
|
||||
{{else if user.admin}}
|
||||
<i class="material-icons checkbox" {{action 'toggleAdmin' user.id}}>check_box</i>
|
||||
{{else}}
|
||||
<i class="material-icons checkbox" {{action 'toggleAdmin' user.id}}>check_box_outline_blank</i>
|
||||
{{/if}}
|
||||
</td>
|
||||
<td class="no-width text-center">
|
||||
{{#if user.me}}
|
||||
<i class="material-icons color-gray">check_box</i>
|
||||
{{else if user.active}}
|
||||
<i class="material-icons checkbox" {{action 'toggleActive' user.id}}>check_box</i>
|
||||
{{else}}
|
||||
<i class="material-icons checkbox" {{action 'toggleActive' user.id}}>check_box_outline_blank</i>
|
||||
{{/if}}
|
||||
</td>
|
||||
<td class="no-width text-center">
|
||||
{{#if user.me}}
|
||||
<div class="edit-button-{{user.id}} round-button-mono" title="Edit" {{action "edit" user.id}}>
|
||||
<i class="material-icons">edit</i>
|
||||
</div>
|
||||
{{else}}
|
||||
<div class="edit-button-{{user.id}} round-button-mono" title="Edit" {{action "edit" user.id}}>
|
||||
<i class="material-icons">edit</i>
|
||||
</div>
|
||||
<div class="button-gap"></div>
|
||||
<div class="delete-button-{{user.id}} round-button-mono" title="Delete" {{action "confirmDelete" user.id}}>
|
||||
<i class="material-icons">delete</i>
|
||||
</div>
|
||||
{{/if}}
|
||||
</td>
|
||||
</tr>
|
||||
{{/each}}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
{{/each}}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
||||
<div class="dropdown-dialog edit-user-dialog">
|
||||
<div class="content">
|
||||
<form>
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="input-control">
|
||||
<label>Firstname</label>
|
||||
{{input id="edit-firstname" type="text" value=editUser.firstname}}
|
||||
</div>
|
||||
<div id="edit-user-modal" class="modal" tabindex="-1" role="dialog">
|
||||
<div class="modal-dialog" role="document">
|
||||
<div class="modal-content">
|
||||
<div class="modal-header">User {{editUser.firstname}} {{editUser.lastname}}</div>
|
||||
<div class="modal-body">
|
||||
<form>
|
||||
<div class="form-group">
|
||||
<label for="edit-firstname">Firstname</label>
|
||||
{{input id="edit-firstname" class="form-control" type="text" value=editUser.firstname}}
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="input-control">
|
||||
<label>Lastname</label>
|
||||
{{input id="edit-lastname" type="text" value=editUser.lastname}}
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="edit-lastname">Lastname</label>
|
||||
{{input id="edit-lastname" type="text" class="form-control" value=editUser.lastname}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<div class="col-md-12">
|
||||
<div class="input-control">
|
||||
<label>Email</label>
|
||||
{{input id="edit-email" type="text" value=editUser.email}}
|
||||
</div>
|
||||
<div class="form-group">
|
||||
<label for="edit-email">Email</label>
|
||||
{{input id="edit-email" type="text" class="form-control" value=editUser.email}}
|
||||
</div>
|
||||
</div>
|
||||
{{#if isAuthProviderDocumize}}
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="input-control">
|
||||
<label>Password</label>
|
||||
<div class="tip">Optional new password</div>
|
||||
{{input id="edit-password" type="password" value=password.password}}
|
||||
{{#if isAuthProviderDocumize}}
|
||||
<div class="row">
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="edit-password">Password</label>
|
||||
<div class="tip">Optional new password</div>
|
||||
{{input id="edit-password" type="password" class="form-control" value=password.password}}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="form-group">
|
||||
<label for="edit-confirmPassword">Confirm Password</label>
|
||||
<div class="tip">Confirm new password</div>
|
||||
{{input id="edit-confirmPassword" type="password" class="form-control" value=password.confirmation}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-md-6">
|
||||
<div class="input-control">
|
||||
<label>Confirm Password</label>
|
||||
<div class="tip">Confirm new password</div>
|
||||
{{input id="edit-confirmPassword" type="password" value=password.confirmation}}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{{/if}}
|
||||
</form>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<div class="flat-button" {{action 'cancel'}}>
|
||||
cancel
|
||||
{{/if}}
|
||||
</form>
|
||||
</div>
|
||||
<div class="flat-button flat-blue" {{action 'save'}}>
|
||||
save
|
||||
<div class="modal-footer">
|
||||
<button type="button" class="btn btn-outline-secondary" data-dismiss="modal">Cancel</button>
|
||||
<button type="button" class="btn btn-outline-success" onclick={{action 'onUpdate'}}>Save</button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
|
||||
<div class="dropdown-dialog delete-user-dialog">
|
||||
<div class="content">
|
||||
<p>Are you sure you want to delete user <span class="font-weight-bold">{{deleteUser.fullname}}?</span></p>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<div class="flat-button" {{action 'cancel'}}>
|
||||
cancel
|
||||
</div>
|
||||
<div class="flat-button flat-red" {{action 'delete'}}>
|
||||
delete
|
||||
</div>
|
||||
</div>
|
||||
<div class="clearfix"></div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{{#ui/ui-dialog title="Delete User" confirmCaption="Delete" buttonType="btn-danger" show=showDeleteDialog onAction=(action 'onDelete')}}
|
||||
<p>Are you sure you want to delete {{deleteUser.fullname}}?</p>
|
||||
{{/ui/ui-dialog}}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue