Files
Cantibra 3180255caa
All checks were successful
Vaultwarden / Vaultwarden [arm64] (push) Successful in 59s
Vaultwarden / Vaultwarden [amd64] (push) Successful in 51s
Inital Commit
2025-10-26 21:11:06 +01:00

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">&nbsp;Benutzer</label>
</div>
<div class="radio">
<label><input type="radio" value="3" class="form-radio-input" name="user_type" id="userOrgTypeManager">&nbsp;Operator</label>
</div>
<div class="radio">
<label><input type="radio" value="1" class="form-radio-input" name="user_type" id="userOrgTypeAdmin">&nbsp;Administrator</label>
</div>
<div class="radio">
<label><input type="radio" value="0" class="form-radio-input" name="user_type" id="userOrgTypeOwner">&nbsp;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>