You've already forked Vaultwarden
148 lines
9.0 KiB
Handlebars
148 lines
9.0 KiB
Handlebars
<main class="container-xl">
|
|
<div id="users-block" class="my-3 p-3 rounded shadow">
|
|
<h6 class="border-bottom pb-2 mb-3">Registrierte Benutzer</h6>
|
|
<div class="table-responsive-xl small">
|
|
<table id="users-table" class="table table-sm table-striped table-hover">
|
|
<thead>
|
|
<tr>
|
|
<th class="vw-account-details">Benutzer</th>
|
|
<th style="padding: 0 50px 0 0 !important;" class="vw-created-at">Erstellt am</th>
|
|
<th class="vw-last-active">letzte Aktivität</th>
|
|
<th style="padding: 0 50px 0 0 !important;" class="vw-entries">Einträge</th>
|
|
<th class="vw-attachments">Anhänge</th>
|
|
<th class="vw-organizations">Organisationen</th>
|
|
<th class="vw-actions">Aktionen</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
{{#each page_data}}
|
|
<tr>
|
|
<td>
|
|
<svg width="48" height="48" class="float-start me-2 rounded" data-jdenticon-value="{{email}}">
|
|
<div>
|
|
<strong>{{name}}</strong>
|
|
<span class="d-block">{{email}}</span>
|
|
<span class="d-block">
|
|
{{#unless user_enabled}}
|
|
<span class="badge bg-danger me-2">Deaktiviert</span>
|
|
{{/unless}}
|
|
{{#if twoFactorEnabled}}
|
|
<span class="badge bg-success me-2">2FA</span>
|
|
{{/if}}
|
|
{{#case _status 1}}
|
|
<span class="badge bg-warning text-dark me-2">Eingeladen</span>
|
|
{{/case}}
|
|
{{#if emailVerified}}
|
|
<span class="badge bg-success me-2">Verifiziert</span>
|
|
{{/if}}
|
|
</span>
|
|
</div>
|
|
</td>
|
|
<td>
|
|
<span class="d-block">{{created_at}}</span>
|
|
</td>
|
|
<td>
|
|
<span class="d-block">{{last_active}}</span>
|
|
</td>
|
|
<td>
|
|
<span class="d-block">{{cipher_count}}</span>
|
|
</td>
|
|
<td>
|
|
<span class="d-block"><strong>Menge:</strong> {{attachment_count}}</span>
|
|
{{#if attachment_count}}
|
|
<span class="d-block"><strong>Größe:</strong> {{attachment_size}}</span>
|
|
{{/if}}
|
|
</td>
|
|
<td>
|
|
<div class="overflow-auto vw-org-cell" data-vw-user-email="{{email}}" data-vw-user-uuid="{{id}}">
|
|
{{#each organizations}}
|
|
<button class="badge" data-bs-toggle="modal" data-bs-target="#userOrgTypeDialog" data-vw-org-type="{{type}}" data-vw-org-uuid="{{id}}" data-vw-org-name="{{name}}">{{name}}</button>
|
|
{{/each}}
|
|
</div>
|
|
</td>
|
|
<td class="text-end px-1 small">
|
|
<span data-vw-user-uuid="{{id}}" data-vw-user-email="{{email}}">
|
|
{{#if TwoFactorEnabled}}
|
|
<button type="button" class="btn btn-sm btn-link p-0 border-0 float-right" vw-remove2fa>2FA entfernen</button><br>
|
|
{{/if}}
|
|
<button type="button" class="btn btn-sm btn-link p-0 border-0 float-right" vw-deauth-user>Sitzungen deautorisieren</button><br>
|
|
<button type="button" class="btn btn-sm btn-link p-0 border-0 float-right" vw-delete-user>Benutzer löschen</button><br>
|
|
{{#if user_enabled}}
|
|
<button type="button" class="btn btn-sm btn-link p-0 border-0 float-right" vw-disable-user>Benutzer deaktivieren</button><br>
|
|
{{else}}
|
|
<button type="button" class="btn btn-sm btn-link p-0 border-0 float-right" vw-enable-user>Benutzer aktivieren</button><br>
|
|
{{/if}}
|
|
{{#case _Status 1}}
|
|
<button type="button" class="btn btn-sm btn-link p-0 border-0 float-right" vw-resend-user-invite>Einladung erneut senden</button><br>
|
|
{{/case}}
|
|
</span>
|
|
</td>
|
|
</tr>
|
|
{{/each}}
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
|
|
<div class="mt-3 clearfix">
|
|
<button style="color: #333; background-color: #fda34a; border-color: #fda34a;" type="button" class="btn btn-sm btn-danger" id="updateRevisions"
|
|
title="Zwingt alle Clients zur Synchronisation bei der nächsten Anmeldung.">
|
|
Synchronisieren
|
|
</button>
|
|
|
|
<button style="color: #333; background-color: #fda34a; border-color: #fda34a;" type="button" class="btn btn-sm btn-primary float-end" id="reload">Aktualisieren</button>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="inviteUserFormBlock" class="align-items-center p-3 mb-3 text-white-50 bg-secondary rounded shadow">
|
|
<div>
|
|
<h6 style="margin: 16px auto !important; text-align: center !important; font-size: 1.4rem !important" class="mb-0 text-white">Registrierung</h6>
|
|
|
|
<form class="form-inline" id="inviteUserForm">
|
|
<input style="margin: 20px auto 10px auto;" type="email" class="form-control w-50" id="inviteEmail" placeholder="E-Mail-Adresse" required spellcheck="false" autofocus="autofocus">
|
|
<button style="display: block; margin: 20px auto 16px auto; color: #333; background-color: #fda34a; border-color: #fda34a;" type="submit" class="btn btn-primary">Anmelden</button>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
|
|
<div id="userOrgTypeDialog" class="modal fade" tabindex="-1" role="dialog" aria-hidden="true">
|
|
<div class="modal-dialog modal-dialog-centered modal-sm">
|
|
<div class="modal-content">
|
|
<div class="modal-header">
|
|
<h6 class="modal-title">
|
|
<b>Update User Type:</b><br><b>Organisation:</b> <span id="userOrgTypeDialogOrgName"></span><br><b>Benutzer:</b> <span id="userOrgTypeDialogUserEmail"></span>
|
|
</h6>
|
|
<button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button>
|
|
</div>
|
|
<form class="form" id="userOrgTypeForm">
|
|
<input type="hidden" name="user_uuid" id="userOrgTypeUserUuid" value="">
|
|
<input type="hidden" name="org_uuid" id="userOrgTypeOrgUuid" value="">
|
|
<div class="modal-body">
|
|
<div class="radio">
|
|
<label><input type="radio" value="2" class="form-radio-input" name="user_type" id="userOrgTypeUser"> Benutzer</label>
|
|
</div>
|
|
<div class="radio">
|
|
<label><input type="radio" value="3" class="form-radio-input" name="user_type" id="userOrgTypeManager"> Operator</label>
|
|
</div>
|
|
<div class="radio">
|
|
<label><input type="radio" value="1" class="form-radio-input" name="user_type" id="userOrgTypeAdmin"> Administrator</label>
|
|
</div>
|
|
<div class="radio">
|
|
<label><input type="radio" value="0" class="form-radio-input" name="user_type" id="userOrgTypeOwner"> Besitzer</label>
|
|
</div>
|
|
</div>
|
|
<div class="modal-footer">
|
|
<button style="color: #333; background-color: #fda34a; border-color: #fda34a;" type="button" class="btn btn-sm btn-secondary" data-bs-dismiss="modal">Abbrechen</button>
|
|
<button style="color: #333; background-color: #fda34a; border-color: #fda34a;" type="submit" class="btn btn-sm btn-primary">Rolle bearbeiten</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</main>
|
|
|
|
<link rel="stylesheet" href="{{urlpath}}/vw_static/datatables.css" />
|
|
<script src="{{urlpath}}/vw_static/jquery-3.7.1.slim.js"></script>
|
|
<script src="{{urlpath}}/vw_static/datatables.js"></script>
|
|
<script src="{{urlpath}}/vw_static/admin_users.js"></script>
|
|
<script src="{{urlpath}}/vw_static/jdenticon-3.3.0.js"></script>
|