Gestion des utilisateurs
This commit is contained in:
parent
7d71923d4f
commit
efd8912648
14 changed files with 576 additions and 26 deletions
75
views/user.html
Normal file
75
views/user.html
Normal file
|
|
@ -0,0 +1,75 @@
|
|||
{% extends "layouts/main.html" %}
|
||||
|
||||
{% block main %}
|
||||
<div class="container mt-4">
|
||||
<div class="mb-4">
|
||||
<nav>
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item"><a href="/">Accueil</a></li>
|
||||
<li class="breadcrumb-item"><a href="/admin">Administration</a></li>
|
||||
<li class="breadcrumb-item"><a href="/admin/users">Utilisateurs</a></li>
|
||||
<li class="breadcrumb-item active">{{ User.Name }}</li>
|
||||
</ol>
|
||||
</nav>
|
||||
<hr>
|
||||
</div>
|
||||
|
||||
<div class="mb-3">
|
||||
<b>Nom complet</b><br>
|
||||
{{ User.Name }}
|
||||
</div>
|
||||
|
||||
<div class="mb-3">
|
||||
<b>Email</b><br>
|
||||
{{ User.Email }}
|
||||
</div>
|
||||
|
||||
<div class="mb-3">
|
||||
<b>Administrateur</b><br>
|
||||
{% if User.IsAdmin %}
|
||||
Oui
|
||||
{% else %}
|
||||
Non
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
<div class="mb-3">
|
||||
<b>Ecran de bienvenue à la prochaine connexion</b><br>
|
||||
{% if User.SkipWelcome %}
|
||||
Non
|
||||
{% else %}
|
||||
Oui
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
<div class="mb-3">
|
||||
<b>Double facteur (TOTP)</b><br>
|
||||
{% if User.TotpSecret.Valid %}
|
||||
Enrollé
|
||||
{% else %}
|
||||
Enrollement lors de la prochaine connexion
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
<div class="mt-3">
|
||||
<a class="btn btn-md btn-primary" href="/admin/users/{{ User.ID }}/edit">
|
||||
<i class="feather" data-feather="edit-2"></i>
|
||||
Modifier
|
||||
</a>
|
||||
|
||||
{% if User.ID != Globals.UserID %}
|
||||
<form
|
||||
action="/admin/users/{{ User.ID }}/delete"
|
||||
method="post"
|
||||
class="d-inline p-0"
|
||||
>
|
||||
<button class="btn btn-md btn-danger areyousure" type="submit">
|
||||
<i class="feather" data-feather="trash-2"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</form>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
</div>
|
||||
{% endblock %}
|
||||
121
views/user_form.html
Normal file
121
views/user_form.html
Normal file
|
|
@ -0,0 +1,121 @@
|
|||
{% extends "layouts/main.html" %}
|
||||
|
||||
{% block main %}
|
||||
<div class="container mt-4">
|
||||
<div class="mb-4">
|
||||
<nav>
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item"><a href="/">Accueil</a></li>
|
||||
<li class="breadcrumb-item"><a href="/admin">Administration</a></li>
|
||||
<li class="breadcrumb-item"><a href="/admin/users">Utilisateurs</a></li>
|
||||
|
||||
{% if User.ID %}
|
||||
<li class="breadcrumb-item"><a href="/admin/users/{{ User.ID }}">{{ User.Name }}</a></li>
|
||||
<li class="breadcrumb-item active">Modifier</li>
|
||||
{% else %}
|
||||
<li class="breadcrumb-item active">Ajouter</li>
|
||||
{% endif %}
|
||||
</ol>
|
||||
</nav>
|
||||
<hr>
|
||||
</div>
|
||||
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<form id="user" method="post">
|
||||
|
||||
<div class="mb-3">
|
||||
<label for="name" class="form-label">
|
||||
Nom complet
|
||||
</label>
|
||||
<input
|
||||
id="name"
|
||||
class="form-control"
|
||||
type="text"
|
||||
name="name"
|
||||
required
|
||||
value="{{ User.Name }}"
|
||||
>
|
||||
</div>
|
||||
|
||||
<div class="mb-3">
|
||||
<label for="email" class="form-label">
|
||||
Email
|
||||
</label>
|
||||
<input
|
||||
id="email"
|
||||
class="form-control"
|
||||
type="email"
|
||||
name="email"
|
||||
required
|
||||
value="{{ User.Email }}"
|
||||
>
|
||||
</div>
|
||||
|
||||
<div class="mb-3">
|
||||
<input
|
||||
type="checkbox"
|
||||
class="form-check-input me-2"
|
||||
id="is_admin"
|
||||
name="is_admin"
|
||||
{% if User.IsAdmin %}checked{% endif %}
|
||||
>
|
||||
<label for="is_admin" class="form-label">
|
||||
Administrateur
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="mb-3">
|
||||
<label for="password" class="form-label">
|
||||
Mot de passe
|
||||
</label>
|
||||
<input
|
||||
id="password"
|
||||
class="form-control"
|
||||
type="password"
|
||||
name="password"
|
||||
{% if !User.ID %}required{% endif %}
|
||||
>
|
||||
{% if User.ID %}
|
||||
<div class="form-text">
|
||||
Laisser vide pour ne pas changer
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
{% if User.ID %}
|
||||
<div class="mb-3">
|
||||
<input
|
||||
type="checkbox"
|
||||
class="form-check-input me-2"
|
||||
id="reset_totp"
|
||||
name="reset_totp"
|
||||
>
|
||||
<label for="reset_totp" class="form-label">
|
||||
Réinitialiser le double facteur (TOTP)
|
||||
</label>
|
||||
<div class="form-text">
|
||||
Si la case est cochée, l'utilisateur devra effectuer
|
||||
un enrollement TOTP à la prochaine connexion.
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="mt-3">
|
||||
<button class="btn btn-primary" type="submit">
|
||||
<i class="me-1" data-feather="save"></i>
|
||||
Enregistrer
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
|
||||
</div>
|
||||
{% endblock %}
|
||||
64
views/users.html
Normal file
64
views/users.html
Normal file
|
|
@ -0,0 +1,64 @@
|
|||
{% extends "layouts/main.html" %}
|
||||
|
||||
{% block main %}
|
||||
<div class="container mt-4">
|
||||
<div class="mb-4">
|
||||
<nav>
|
||||
<ol class="breadcrumb">
|
||||
<li class="breadcrumb-item"><a href="/">Accueil</a></li>
|
||||
<li class="breadcrumb-item"><a href="/admin">Administration</a></li>
|
||||
<li class="breadcrumb-item active">Utilisateurs</li>
|
||||
</ol>
|
||||
</nav>
|
||||
<hr>
|
||||
</div>
|
||||
|
||||
{% if Users %}
|
||||
<div class="table-responsive">
|
||||
<table class="table">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Nom complet</th>
|
||||
<th>Email</th>
|
||||
<th>Administrateur</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
{% for User in Users %}
|
||||
<tr>
|
||||
<td>
|
||||
<span class="user-photo me-2">{{ User.Name|first }}</span>
|
||||
<a href="/admin/users/{{ User.ID }}">
|
||||
{{ User.Name }}
|
||||
</a>
|
||||
</td>
|
||||
<td>
|
||||
{{ User.Email }}
|
||||
</td>
|
||||
<td>
|
||||
{% if User.IsAdmin %}
|
||||
Oui
|
||||
{% else %}
|
||||
Non
|
||||
{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="my-4">
|
||||
Pas d'utilisateurs pour le moment
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="mt-3">
|
||||
<a class="btn btn-md btn-primary" href="/admin/users/add">
|
||||
<i class="feather" data-feather="plus"></i>
|
||||
Ajouter
|
||||
</a>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
{% endblock %}
|
||||
Loading…
Add table
Add a link
Reference in a new issue