{% extends 'base.html' %} {% block header %} {% block title %}<h1>Nutzer Übersicht</h1>{% endblock %} <script src="../static/js/jquery-3.6.0.js"></script> {% endblock %} {% block content %} <table class="table"> <thead> <th scope="col">Benutzer</th> <th scope="col">E-Mail</th> <th scope="col">Aktiv</th> <th scope="col">Admin</th> <th scope="col">Super-Admin</th> <th scope="col">Aktionen</th> </thead> <tbody> {% for data in admin_data %} {% if data['active'] %} <tr> {% else %} <tr style="background-color: lightgrey"> {% endif %} {% for field in ['username', 'email', 'active', 'admin', 'super_admin'] %} <th scope="row">{{ data[field] if data[field] }}</th> {% endfor %} <td> {% if not data['super_admin'] %} <a href="{{ url_for('door_app.admin_toggle_active', username=data['username']) }}"><img src="static/stop.png" title="Aktivieren/Deaktivieren" alt="Toggle active"></a> <a href="{{ url_for('door_app.delete_admins', username=data['username']) }}"><img src="static/delete.png" title="Löschen" alt="Delete"></a> {% endif %} {% if data['admin'] %} {% if not data['super_admin'] %} <a href="{{ url_for('door_app.demote_admin', username=data['username']) }}"><img src="static/demote.png" title="Admin-Rechte widerrufen" alt="Demote"></a> {% endif %} {% else %} <a href="{{ url_for('door_app.promote_admin', username=data['username']) }}"><img src="static/promote.png" title="Zu Admin machen" alt="Promote"></a> {% endif %} </td> </tr> {% endfor %} </tbody> </table> <div class="d-grid gap-3"> <div class="p-2 bg-light border"> <h3>Neuen Benutzer erstellen:</h3> <form method="POST"> <table> {{ form.csrf_token }} <tr> <td>{{ form.name.label }}</td> <td>{{ form.name(size=20) }}</td> </tr> <tr> <td>{{ form.email.label }}</td> <td>{{ form.email(size=20) }}</td> </tr> <tr> <td></td> <td> <input type="submit" value="Abschicken"> </td> </tr> </table> </form> </div> <div class="p-2 bg-light border"> <h3>Nutzerdaten sichern:</h3> <form action="{{ url_for('door_app.backup_user_datastore') }}" method="get"> <input type="submit" value="Download"> </form> </div> <div class="p-2 bg-light border"> <h3>Nutzerdaten wiederherstellen:</h3> <form action="{{ url_for('door_app.restore_user_datastore') }}" method=post enctype=multipart/form-data> <input type=file name=file> <input type=submit value="Abschicken"> </form> </div> </div> {% endblock %}