Prettier templates

This commit is contained in:
William Bouzourène 2025-05-11 16:44:40 +02:00
parent d98268d9d6
commit 7b1cb83742
Signed by: bouzoure
SSH key fingerprint: SHA256:19MbXpLua4rUtk8tunMesD8KUKb91LXLHg8E/qTooww
33 changed files with 4207 additions and 4374 deletions

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -9,7 +9,7 @@
<li class="breadcrumb-item active">Gérer mon compte utilisateur</li> <li class="breadcrumb-item active">Gérer mon compte utilisateur</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
{% if Errors %} {% if Errors %}
@ -23,11 +23,8 @@
{% endif %} {% endif %}
<form id="account" method="post"> <form id="account" method="post">
<div class="row mb-3"> <div class="row mb-3">
<label for="name" class="col-md-2 form-label"> <label for="name" class="col-md-2 form-label"> Nom complet </label>
Nom complet
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="name" id="name"
@ -38,14 +35,12 @@
value="{{ User.Name }}" value="{{ User.Name }}"
autofocus autofocus
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<label for="email" class="col-md-2 form-label"> <label for="email" class="col-md-2 form-label"> Email </label>
Email
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="email" id="email"
@ -55,14 +50,12 @@
required required
value="{{ User.Email }}" value="{{ User.Email }}"
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<label for="password" class="col-md-2 form-label"> <label for="password" class="col-md-2 form-label"> Mot de passe </label>
Mot de passe
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="password" id="password"
@ -70,10 +63,8 @@
type="password" type="password"
name="password" name="password"
autocomplete="off" autocomplete="off"
> />
<div class="form-text"> <div class="form-text">Laisser vide pour ne pas changer</div>
Laisser vide pour ne pas changer
</div>
</div> </div>
</div> </div>
@ -88,7 +79,7 @@
type="password" type="password"
name="password-verify" name="password-verify"
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
@ -99,14 +90,13 @@
</button> </button>
</div> </div>
</form> </form>
</div>
</div>
{% endblock %} {% endblock %}
{% block javascript %} {% block javascript %}
<script> <script>
$(document).ready(function() { $(document).ready(function () {
$("#password").on("input", function() { $("#password").on("input", function () {
var enable = false; var enable = false;
if ($(this).val().length > 0) { if ($(this).val().length > 0) {
enable = true; enable = true;
@ -118,5 +108,5 @@
$("#password").trigger("input"); $("#password").trigger("input");
}); });
</script> </script>
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -9,11 +9,10 @@
<li class="breadcrumb-item active">Gérer multifacteur (TOTP)</li> <li class="breadcrumb-item active">Gérer multifacteur (TOTP)</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<form id="account" method="post"> <form id="account" method="post">
<div class="mb-3"> <div class="mb-3">
<input <input
type="checkbox" type="checkbox"
@ -22,13 +21,13 @@
name="reset_totp" name="reset_totp"
autocomplete="off" autocomplete="off"
required required
> />
<label for="reset_totp" class="form-label"> <label for="reset_totp" class="form-label">
Réinitialiser le double facteur (TOTP) Réinitialiser le double facteur (TOTP)
</label> </label>
<div class="form-text"> <div class="form-text">
Si la case est cochée, vous devrez effectuer Si la case est cochée, vous devrez effectuer un nouvel enrôlement
un nouvel enrôlement TOTP. TOTP.
</div> </div>
</div> </div>
@ -39,6 +38,5 @@
</button> </button>
</div> </div>
</form> </form>
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -9,7 +9,7 @@
<li class="breadcrumb-item active">Administration</li> <li class="breadcrumb-item active">Administration</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="row"> <div class="row">
@ -54,5 +54,5 @@
</a> </a>
</div> </div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

View file

@ -1,8 +1,8 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container text-center py-5"> <div class="container text-center py-5">
<div class="h1 mb-3">Erreur {{ Code }}</div> <div class="h1 mb-3">Erreur {{ Code }}</div>
<code>{{ Message }}</code> <code>{{ Message }}</code>
</div> </div>
{% endblock %} {% endblock %}

View file

@ -1,23 +1,23 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
<li class="breadcrumb-item"><a href="/">Accueil</a></li> <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">Administration</a></li>
<li class="breadcrumb-item"><a href="/admin/fields">Champs supplémentaires</a></li> <li class="breadcrumb-item">
<a href="/admin/fields">Champs supplémentaires</a>
</li>
<li class="breadcrumb-item active">{{ Field.Name }}</li> <li class="breadcrumb-item active">{{ Field.Name }}</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Nom du champ</div>
Nom du champ
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -25,14 +25,12 @@
value="{{ Field.Name }}" value="{{ Field.Name }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Population</div>
Population
</div>
<div class="col-md-10"> <div class="col-md-10">
{% for Key, Value in PersonTypes %} {% for Key, Value in PersonTypes %}
{% if Key == Field.PersonType %} {% if Key == Field.PersonType %}
@ -42,16 +40,14 @@
value="{{ Value }}" value="{{ Value }}"
disabled disabled
readonly readonly
> />
{% endif %} {% endif %}
{% endfor %} {% endfor %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Type de champ</div>
Type de champ
</div>
<div class="col-md-10"> <div class="col-md-10">
{% for Key, Value in FieldTypes %} {% for Key, Value in FieldTypes %}
{% if Key == Field.FieldType %} {% if Key == Field.FieldType %}
@ -61,16 +57,14 @@
value="{{ Value }}" value="{{ Value }}"
disabled disabled
readonly readonly
> />
{% endif %} {% endif %}
{% endfor %} {% endfor %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Liste</div>
Liste
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Field.ListID %} {% if Field.ListID %}
<div class="input-group"> <div class="input-group">
@ -80,7 +74,7 @@
value="{{ Field.List.Name }}" value="{{ Field.List.Name }}"
readonly readonly
disabled disabled
> />
<span class="input-group-text"> <span class="input-group-text">
<a href="/admin/lists/{{ Field.List.ID }}"> <a href="/admin/lists/{{ Field.List.ID }}">
Afficher Afficher
@ -93,12 +87,7 @@
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
@ -106,34 +95,49 @@
<div class="row my-4"> <div class="row my-4">
<div class="col-6"> <div class="col-6">
<a class="btn btn-outline-primary" href="/admin/fields/{{ Field.ID }}/edit"> <a
class="btn btn-outline-primary"
href="/admin/fields/{{ Field.ID }}/edit"
>
<i class="bi-pencil-square"></i> <i class="bi-pencil-square"></i>
Modifier Modifier
</a> </a>
</div> </div>
<div class="col-6 text-end"> <div class="col-6 text-end">
<button type="button" class="btn btn-outline-danger" data-bs-toggle="modal" data-bs-target="#modal-delete"> <button
type="button"
class="btn btn-outline-danger"
data-bs-toggle="modal"
data-bs-target="#modal-delete"
>
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
</button> </button>
</div> </div>
</div> </div>
</div>
</div> <div id="modal-delete" class="modal" tabindex="-1">
<div id="modal-delete" class="modal" tabindex="-1">
<div class="modal-dialog modal-dialog-centered"> <div class="modal-dialog modal-dialog-centered">
<div class="modal-content"> <div class="modal-content">
<div class="modal-body"> <div class="modal-body">
<p>Êtes-vous sûr de vouloir supprimer ce champ ?</p> <p>Êtes-vous sûr de vouloir supprimer ce champ ?</p>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal"> <button
type="button"
class="btn btn-outline-secondary"
data-bs-dismiss="modal"
>
<i class="bi-x-lg me-1"></i> <i class="bi-x-lg me-1"></i>
Annuler Annuler
</button> </button>
<form action="/admin/fields/{{ Field.ID }}/delete" method="post" class="d-inline p-0"> <form
action="/admin/fields/{{ Field.ID }}/delete"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-danger" type="submit"> <button class="btn btn-outline-danger" type="submit">
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
@ -142,5 +146,5 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

View file

@ -1,13 +1,15 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
<li class="breadcrumb-item"><a href="/">Accueil</a></li> <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">Administration</a></li>
<li class="breadcrumb-item"><a href="/admin/fields">Champs supplémentaires</a></li> <li class="breadcrumb-item">
<a href="/admin/fields">Champs supplémentaires</a>
</li>
{% if Field.ID %} {% if Field.ID %}
<li class="breadcrumb-item"> <li class="breadcrumb-item">
@ -19,7 +21,7 @@
{% endif %} {% endif %}
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
{% if Errors %} {% if Errors %}
@ -33,11 +35,8 @@
{% endif %} {% endif %}
<form id="field" method="post"> <form id="field" method="post">
<div class="row mb-3"> <div class="row mb-3">
<label for="name" class="form-label col-md-2"> <label for="name" class="form-label col-md-2"> Nom du champ </label>
Nom du champ
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="name" id="name"
@ -48,7 +47,7 @@
value="{{ Field.Name }}" value="{{ Field.Name }}"
autocomplete="off" autocomplete="off"
autofocus autofocus
> />
</div> </div>
</div> </div>
@ -93,9 +92,7 @@
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<label for="list" class="form-label col-md-2"> <label for="list" class="form-label col-md-2"> Liste </label>
Liste
</label>
<div class="col-md-10"> <div class="col-md-10">
<select <select
name="list" name="list"
@ -105,9 +102,7 @@
required required
> >
{% for List in Lists %} {% for List in Lists %}
<option value="{{ List.ID }}"> <option value="{{ List.ID }}">{{ List.Name }}</option>
{{ List.Name }}
</option>
{% endfor %} {% endfor %}
</select> </select>
</div> </div>
@ -121,21 +116,20 @@
</button> </button>
</div> </div>
</form> </form>
</div>
</div>
{% endblock %} {% endblock %}
{% block javascript %} {% block javascript %}
<script> <script>
$(document).ready(function() { $(document).ready(function () {
$("#field_type").on("change", function() { $("#field_type").on("change", function () {
var enable = false; var enable = false;
if ($(this).val() == "list") { if ($(this).val() == "list") {
enable = true; enable = true;
$("#list-disabled").remove(); $("#list-disabled").remove();
} else { } else {
$("#list").append("<option id=\"list-disabled\" selected></option>"); $("#list").append('<option id="list-disabled" selected></option>');
} }
$("#list").prop("disabled", !enable); $("#list").prop("disabled", !enable);
@ -144,5 +138,5 @@
$("#field_type").trigger("change"); $("#field_type").trigger("change");
}); });
</script> </script>
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container my-4"> <div class="container my-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -10,7 +10,7 @@
<li class="breadcrumb-item active">Champs supplémentaires</li> <li class="breadcrumb-item active">Champs supplémentaires</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="my-3 text-end"> <div class="my-3 text-end">
@ -35,9 +35,7 @@
{% if Field.PersonType == "member" %} {% if Field.PersonType == "member" %}
<tr> <tr>
<td> <td>
<a href="/admin/fields/{{ Field.ID }}"> <a href="/admin/fields/{{ Field.ID }}"> {{ Field.Name }} </a>
{{ Field.Name }}
</a>
</td> </td>
<td> <td>
{% for Key, Value in FieldTypes %} {% for Key, Value in FieldTypes %}
@ -48,11 +46,17 @@
</td> </td>
<td class="text-end"> <td class="text-end">
<div class="btn-group"> <div class="btn-group">
<a class="btn btn-sm btn-outline-primary" href="/admin/fields/{{ Field.ID }}/move-up"> <a
class="btn btn-sm btn-outline-primary"
href="/admin/fields/{{ Field.ID }}/move-up"
>
<i class="bi-arrow-up me-1"></i> <i class="bi-arrow-up me-1"></i>
Monter Monter
</a> </a>
<a class="btn btn-sm btn-outline-primary" href="/admin/fields/{{ Field.ID }}/move-down"> <a
class="btn btn-sm btn-outline-primary"
href="/admin/fields/{{ Field.ID }}/move-down"
>
<i class="bi-arrow-down me-1"></i> <i class="bi-arrow-down me-1"></i>
Descendre Descendre
</a> </a>
@ -80,9 +84,7 @@
{% if Field.PersonType == "contact" %} {% if Field.PersonType == "contact" %}
<tr> <tr>
<td> <td>
<a href="/admin/fields/{{ Field.ID }}"> <a href="/admin/fields/{{ Field.ID }}"> {{ Field.Name }} </a>
{{ Field.Name }}
</a>
</td> </td>
<td> <td>
{% for Key, Value in FieldTypes %} {% for Key, Value in FieldTypes %}
@ -93,11 +95,17 @@
</td> </td>
<td class="text-end"> <td class="text-end">
<div class="btn-group"> <div class="btn-group">
<a class="btn btn-sm btn-outline-primary" href="/admin/fields/{{ Field.ID }}/move-up"> <a
class="btn btn-sm btn-outline-primary"
href="/admin/fields/{{ Field.ID }}/move-up"
>
<i class="bi-arrow-up me-1"></i> <i class="bi-arrow-up me-1"></i>
Monter Monter
</a> </a>
<a class="btn btn-sm btn-outline-primary" href="/admin/fields/{{ Field.ID }}/move-down"> <a
class="btn btn-sm btn-outline-primary"
href="/admin/fields/{{ Field.ID }}/move-down"
>
<i class="bi-arrow-down me-1"></i> <i class="bi-arrow-down me-1"></i>
Descendre Descendre
</a> </a>
@ -109,6 +117,5 @@
</tbody> </tbody>
</table> </table>
</div> </div>
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,18 +1,17 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
<li class="breadcrumb-item active">Accueil</li> <li class="breadcrumb-item active">Accueil</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="row"> <div class="row">
{% if Globals.AllowMembersPage %} {% if Globals.AllowMembersPage %}
<div class="col-md-6"> <div class="col-md-6">
<a class="dashboard-tile" href="/members"> <a class="dashboard-tile" href="/members">
@ -46,5 +45,5 @@
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

View file

@ -1,9 +1,9 @@
<!doctype html> <!doctype html>
<html lang="fr" class="h-100" data-bs-theme="{{ Globals.ColorMode }}"> <html lang="fr" class="h-100" data-bs-theme="{{ Globals.ColorMode }}">
{% include "partials/easter_egg.html" %} {% include "partials/easter_egg.html" %}
<head> <head>
<meta charset="UTF-8"> <meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0" />
{% set PageTitleSuffix = "Camarades | POP Vaud" %} {% set PageTitleSuffix = "Camarades | POP Vaud" %}
{% if PageTitle %} {% if PageTitle %}
@ -12,20 +12,28 @@
<title>{{ PageTitleSuffix }}</title> <title>{{ PageTitleSuffix }}</title>
{% endif %} {% endif %}
<link rel="shortcut icon" href="/static/images/favicon.jpg" type="image/jpg"> <link
<link rel="stylesheet" href="/static/bootstrap/css/bootstrap.min.css"> rel="shortcut icon"
<link rel="stylesheet" href="/static/bootstrap-icons/bootstrap-icons.min.css"> href="/static/images/favicon.jpg"
<link rel="stylesheet" href="/static/main.css"> type="image/jpg"
/>
<link rel="stylesheet" href="/static/bootstrap/css/bootstrap.min.css" />
<link
rel="stylesheet"
href="/static/bootstrap-icons/bootstrap-icons.min.css"
/>
<link rel="stylesheet" href="/static/main.css" />
{% block stylesheet %}{% endblock %} {% block stylesheet %}{% endblock %}
</head> </head>
<body class="d-flex flex-column h-100"> <body class="d-flex flex-column h-100">
<main class="flex-shrink-0"> <main class="flex-shrink-0">
{% block body %} {% block body %}
{% block header %} {% block header %}
{% include "partials/header.html" %} {% include "partials/header.html" %}
{% endblock %} {% endblock %}
{% block main %}{% endblock %} {% block main %}
{% endblock %}
{% endblock %} {% endblock %}
</main> </main>
@ -40,11 +48,7 @@
<i class="bi-code-slash"></i> <i class="bi-code-slash"></i>
Code source Code source
</a> </a>
<a <a class="text-body-secondary" target="_blank" href="/licenses">
class="text-body-secondary"
target="_blank"
href="/licences"
>
<i class="bi-journal-bookmark"></i> <i class="bi-journal-bookmark"></i>
Licences Licences
</a> </a>
@ -64,5 +68,5 @@
<script src="/static/bootstrap/js/bootstrap.bundle.min.js"></script> <script src="/static/bootstrap/js/bootstrap.bundle.min.js"></script>
<script src="/static/functions.js"></script> <script src="/static/functions.js"></script>
{% block javascript %}{% endblock %} {% block javascript %}{% endblock %}
</body> </body>
</html> </html>

View file

@ -1,13 +1,11 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div id="licenses" class="container-fluid p-3"> <div id="licenses" class="container-fluid p-3">{{ Markdown|safe }}</div>
{{ Markdown|safe }}
</div>
{% endblock %} {% endblock %}
{% block stylesheet %} {% block stylesheet %}
<style> <style>
#licenses h2 { #licenses h2 {
font-weight: bold; font-weight: bold;
margin: 15px 0; margin: 15px 0;
@ -16,5 +14,5 @@
#licenses p { #licenses p {
margin: 0; margin: 0;
} }
</style> </style>
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container my-4"> <div class="container my-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -11,13 +11,11 @@
<li class="breadcrumb-item active">{{ List.Name }}</li> <li class="breadcrumb-item active">{{ List.Name }}</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Nom</div>
Nom
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -25,38 +23,26 @@
value="{{ List.Name }}" value="{{ List.Name }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Liste à choix multiples</div>
Liste à choix multiples
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if List.Multi %} {% if List.Multi %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
@ -64,13 +50,21 @@
<div class="my-4 row"> <div class="my-4 row">
<div class="col-6"> <div class="col-6">
<a class="btn btn-outline-primary" href="/admin/lists/{{ List.ID }}/edit"> <a
class="btn btn-outline-primary"
href="/admin/lists/{{ List.ID }}/edit"
>
<i class="bi-pencil-square"></i> <i class="bi-pencil-square"></i>
Modifier Modifier
</a> </a>
</div> </div>
<div class="col-6 text-end"> <div class="col-6 text-end">
<button type="button" class="btn btn-outline-danger" data-bs-toggle="modal" data-bs-target="#modal-delete"> <button
type="button"
class="btn btn-outline-danger"
data-bs-toggle="modal"
data-bs-target="#modal-delete"
>
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
</button> </button>
@ -78,11 +72,12 @@
</div> </div>
<div class="my-3 row"> <div class="my-3 row">
<div class="col-sm-9 h4"> <div class="col-sm-9 h4">Contenu de la liste</div>
Contenu de la liste
</div>
<div class="col-sm-3 text-end"> <div class="col-sm-3 text-end">
<a class="btn btn-outline-primary" href="/admin/lists/{{ List.ID }}/items/add"> <a
class="btn btn-outline-primary"
href="/admin/lists/{{ List.ID }}/items/add"
>
<i class="bi-plus-lg"></i> <i class="bi-plus-lg"></i>
Ajouter Ajouter
</a> </a>
@ -117,7 +112,12 @@
{% endif %} {% endif %}
</td> </td>
<td class="text-end"> <td class="text-end">
<button type="button" class="btn btn-outline-danger btn-sm" data-bs-toggle="modal" data-bs-target="#modal-delete-value-{{ Item.ID }}"> <button
type="button"
class="btn btn-outline-danger btn-sm"
data-bs-toggle="modal"
data-bs-target="#modal-delete-value-{{ Item.ID }}"
>
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
</button> </button>
@ -128,26 +128,31 @@
</table> </table>
</div> </div>
{% else %} {% else %}
<div> <div>Pas encore d'éléments dans cette liste.</div>
Pas encore d'éléments dans cette liste.
</div>
{% endif %} {% endif %}
</div>
</div> <div id="modal-delete" class="modal" tabindex="-1">
<div id="modal-delete" class="modal" tabindex="-1">
<div class="modal-dialog modal-dialog-centered"> <div class="modal-dialog modal-dialog-centered">
<div class="modal-content"> <div class="modal-content">
<div class="modal-body"> <div class="modal-body">
<p>Êtes-vous sûr de vouloir supprimer cette liste ?</p> <p>Êtes-vous sûr de vouloir supprimer cette liste ?</p>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal"> <button
type="button"
class="btn btn-outline-secondary"
data-bs-dismiss="modal"
>
<i class="bi-x-lg me-1"></i> <i class="bi-x-lg me-1"></i>
Annuler Annuler
</button> </button>
<form action="/admin/lists/{{ List.ID }}/delete" method="post" class="d-inline p-0"> <form
action="/admin/lists/{{ List.ID }}/delete"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-danger" type="submit"> <button class="btn btn-outline-danger" type="submit">
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
@ -156,22 +161,30 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
{% for Item in ListItems %} {% for Item in ListItems %}
<div id="modal-delete-value-{{ Item.ID }}" class="modal" tabindex="-1"> <div id="modal-delete-value-{{ Item.ID }}" class="modal" tabindex="-1">
<div class="modal-dialog modal-dialog-centered"> <div class="modal-dialog modal-dialog-centered">
<div class="modal-content"> <div class="modal-content">
<div class="modal-body"> <div class="modal-body">
<p>Êtes-vous sûr de vouloir supprimer cette valeur ?</p> <p>Êtes-vous sûr de vouloir supprimer cette valeur ?</p>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal"> <button
type="button"
class="btn btn-outline-secondary"
data-bs-dismiss="modal"
>
<i class="bi-x-lg me-1"></i> <i class="bi-x-lg me-1"></i>
Annuler Annuler
</button> </button>
<form action="/admin/lists/{{ List.ID }}/items/{{ Item.ID }}/delete" method="post" class="d-inline p-0"> <form
action="/admin/lists/{{ List.ID }}/items/{{ Item.ID }}/delete"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-danger" type="submit"> <button class="btn btn-outline-danger" type="submit">
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
@ -180,7 +193,6 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
{% endfor %} {% endfor %}
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -10,14 +10,16 @@
<li class="breadcrumb-item"><a href="/admin/lists">Listes</a></li> <li class="breadcrumb-item"><a href="/admin/lists">Listes</a></li>
{% if List.ID %} {% if List.ID %}
<li class="breadcrumb-item"><a href="/admin/lists/{{ List.ID }}">{{ List.Name }}</a></li> <li class="breadcrumb-item">
<a href="/admin/lists/{{ List.ID }}">{{ List.Name }}</a>
</li>
<li class="breadcrumb-item active">Modifier</li> <li class="breadcrumb-item active">Modifier</li>
{% else %} {% else %}
<li class="breadcrumb-item active">Ajouter</li> <li class="breadcrumb-item active">Ajouter</li>
{% endif %} {% endif %}
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
{% if Errors %} {% if Errors %}
@ -31,11 +33,8 @@
{% endif %} {% endif %}
<form id="list" method="post"> <form id="list" method="post">
<div class="row mb-3"> <div class="row mb-3">
<label for="name" class="form-label col-md-2"> <label for="name" class="form-label col-md-2"> Nom </label>
Nom
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="name" id="name"
@ -46,7 +45,7 @@
value="{{ List.Name }}" value="{{ List.Name }}"
autocomplete="off" autocomplete="off"
autofocus autofocus
> />
</div> </div>
</div> </div>
@ -59,7 +58,7 @@
name="multi" name="multi"
{% if List.Multi %}checked{% endif %} {% if List.Multi %}checked{% endif %}
autocomplete="off" autocomplete="off"
> />
<label for="multi" class="form-label"> <label for="multi" class="form-label">
Liste à choix multiples Liste à choix multiples
</label> </label>
@ -73,6 +72,5 @@
</button> </button>
</div> </div>
</form> </form>
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,14 +1,16 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
<li class="breadcrumb-item"><a href="/">Accueil</a></li> <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">Administration</a></li>
<li class="breadcrumb-item"><a href="/admin/lists">Listes</a></li> <li class="breadcrumb-item"><a href="/admin/lists">Listes</a></li>
<li class="breadcrumb-item"><a href="/admin/lists/{{ List.ID }}">{{ List.Name }}</a></li> <li class="breadcrumb-item">
<a href="/admin/lists/{{ List.ID }}">{{ List.Name }}</a>
</li>
{% if ListItem.ID %} {% if ListItem.ID %}
<li class="breadcrumb-item active">Modifier élément</li> <li class="breadcrumb-item active">Modifier élément</li>
@ -17,7 +19,7 @@
{% endif %} {% endif %}
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
{% if Errors %} {% if Errors %}
@ -31,11 +33,8 @@
{% endif %} {% endif %}
<form id="listitem" method="post"> <form id="listitem" method="post">
<div class="row mb-3"> <div class="row mb-3">
<label for="value" class="form-label col-md-2"> <label for="value" class="form-label col-md-2"> Valeur </label>
Valeur
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="value" id="value"
@ -46,7 +45,7 @@
value="{{ ListItem.Value }}" value="{{ ListItem.Value }}"
autocomplete="off" autocomplete="off"
autofocus autofocus
> />
</div> </div>
</div> </div>
@ -61,7 +60,7 @@
{% if ListItem.Default %} {% if ListItem.Default %}
checked checked
{% endif %} {% endif %}
> />
<label for="default" class="form-label"> <label for="default" class="form-label">
Valeur sélectionnée par défaut Valeur sélectionnée par défaut
</label> </label>
@ -75,6 +74,5 @@
</button> </button>
</div> </div>
</form> </form>
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container my-4"> <div class="container my-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -10,7 +10,7 @@
<li class="breadcrumb-item active">Listes</li> <li class="breadcrumb-item active">Listes</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="my-3 text-end"> <div class="my-3 text-end">
@ -33,9 +33,7 @@
{% for List in Lists %} {% for List in Lists %}
<tr> <tr>
<td> <td>
<a href="/admin/lists/{{ List.ID }}"> <a href="/admin/lists/{{ List.ID }}"> {{ List.Name }} </a>
{{ List.Name }}
</a>
</td> </td>
<td> <td>
{% if List.Multi %} {% if List.Multi %}
@ -52,10 +50,7 @@
</table> </table>
</div> </div>
{% else %} {% else %}
<div class="my-4"> <div class="my-4">Pas de liste pour le moment</div>
Pas de liste pour le moment
</div>
{% endif %} {% endif %}
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,24 +1,18 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container"> <div class="container">
<div id="login-card" class="my-5"> <div id="login-card" class="my-5">
<div class="card"> <div class="card">
<div class="card-header"> <div class="card-header">Authentification</div>
Authentification
</div>
<div class="card-body"> <div class="card-body">
{% if LoginError %} {% if LoginError %}
<div class="alert alert-danger"> <div class="alert alert-danger">{{ LoginError }}</div>
{{ LoginError }}
</div>
{% endif %} {% endif %}
<form id="login" method="post"> <form id="login" method="post">
<div class="mb-3"> <div class="mb-3">
<label for="email" class="form-label"> <label for="email" class="form-label"> Adresse email </label>
Adresse email
</label>
<input <input
id="email" id="email"
class="form-control" class="form-control"
@ -26,19 +20,17 @@
name="email" name="email"
required required
autofocus autofocus
> />
</div> </div>
<div class="mb-3"> <div class="mb-3">
<label for="password" class="form-label"> <label for="password" class="form-label"> Mot de passe </label>
Mot de passe
</label>
<input <input
id="password" id="password"
class="form-control" class="form-control"
type="password" type="password"
name="password" name="password"
required required
> />
</div> </div>
<div class="mb-3"> <div class="mb-3">
<input <input
@ -46,7 +38,7 @@
class="form-check-input me-2" class="form-check-input me-2"
id="save_session" id="save_session"
name="save_session" name="save_session"
> />
<label for="save_session" class="form-label"> <label for="save_session" class="form-label">
Se souvenir de moi Se souvenir de moi
</label> </label>
@ -61,5 +53,5 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

View file

@ -6,7 +6,7 @@
class="me-1" class="me-1"
src="/static/images/logo.png" src="/static/images/logo.png"
alt="Logo" alt="Logo"
> />
</a> </a>
<button <button
@ -20,7 +20,6 @@
<div class="collapse navbar-collapse" id="navbar-content"> <div class="collapse navbar-collapse" id="navbar-content">
<ul class="navbar-nav me-auto mb-2 mb-lg-0"> <ul class="navbar-nav me-auto mb-2 mb-lg-0">
{% if Globals.TotpVerified %} {% if Globals.TotpVerified %}
{% if Globals.AllowMembersPage %} {% if Globals.AllowMembersPage %}
@ -81,7 +80,6 @@
</ul> </ul>
{% endif %} {% endif %}
{% endif %} {% endif %}
</ul> </ul>
<div class="d-flex"> <div class="d-flex">
<ul class="navbar-nav me-auto mb-2 mb-lg-0"> <ul class="navbar-nav me-auto mb-2 mb-lg-0">
@ -97,7 +95,6 @@
{% else %} {% else %}
<i class="bi-moon"></i> <i class="bi-moon"></i>
{% endif %} {% endif %}
</a> </a>
{% if Globals.LoggedIn %} {% if Globals.LoggedIn %}
@ -108,7 +105,9 @@
role="button" role="button"
data-bs-toggle="dropdown" data-bs-toggle="dropdown"
> >
<span class="user-photo me-2">{{ Globals.UserFullname|first }}</span>{{ Globals.UserFullname }} <span class="user-photo me-2"
>{{ Globals.UserFullname|first }}</span
>{{ Globals.UserFullname }}
</a> </a>
<ul class="dropdown-menu dropdown-menu-end"> <ul class="dropdown-menu dropdown-menu-end">
{% if Globals.TotpVerified %} {% if Globals.TotpVerified %}
@ -123,7 +122,7 @@
</a> </a>
</li> </li>
<li> <li>
<hr class="dropdown-divider"> <hr class="dropdown-divider" />
</li> </li>
{% endif %} {% endif %}
@ -138,6 +137,5 @@
</ul> </ul>
</div> </div>
</div> </div>
</div> </div>
</nav> </nav>

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container my-4"> <div class="container my-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -12,10 +12,9 @@
{% else %} {% else %}
<li class="breadcrumb-item active">Contacts</li> <li class="breadcrumb-item active">Contacts</li>
{% endif %} {% endif %}
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="my-3 text-end"> <div class="my-3 text-end">
@ -25,7 +24,10 @@
<i class="bi-plus-lg"></i> <i class="bi-plus-lg"></i>
Ajouter Ajouter
</a> </a>
<a class="btn btn-outline-primary" href="/members/export?s={{ SearchJSON|urlencode }}"> <a
class="btn btn-outline-primary"
href="/members/export?s={{ SearchJSON|urlencode }}"
>
<i class="bi-filetype-csv"></i> <i class="bi-filetype-csv"></i>
Exporter Exporter
</a> </a>
@ -36,7 +38,10 @@
<i class="bi-plus-lg"></i> <i class="bi-plus-lg"></i>
Ajouter Ajouter
</a> </a>
<a class="btn btn-outline-primary" href="/contacts/export?s={{ SearchJSON|urlencode }}"> <a
class="btn btn-outline-primary"
href="/contacts/export?s={{ SearchJSON|urlencode }}"
>
<i class="bi-filetype-csv"></i> <i class="bi-filetype-csv"></i>
Exporter Exporter
</a> </a>
@ -44,85 +49,142 @@
{% endif %} {% endif %}
</div> </div>
<div id="search-container" class="h-100 p-4 mb-3 bg-body-tertiary border rounded-3"> <div
id="search-container"
class="h-100 p-4 mb-3 bg-body-tertiary border rounded-3"
>
<div class="row"> <div class="row">
<div class="col-lg-6 mb-3"> <div class="col-lg-6 mb-3">
<label for="name" class="form-label">Nom et prénom</label> <label for="name" class="form-label">Nom et prénom</label>
<input type="text" class="form-control" id="name" data-search-field="name" data-search-advanced="false" name="name"> <input
type="text"
class="form-control"
id="name"
data-search-field="name"
data-search-advanced="false"
name="name"
/>
</div> </div>
<div class="col-sm-6 col-lg-3 mb-3"> <div class="col-sm-6 col-lg-3 mb-3">
<label for="section" class="form-label">Section</label> <label for="section" class="form-label">Section</label>
<select class="form-select" id="section" data-search-field="section" data-search-type="int" data-search-advanced="false" name="section"> <select
class="form-select"
id="section"
data-search-field="section"
data-search-type="int"
data-search-advanced="false"
name="section"
>
<option value=""></option> <option value=""></option>
{% for Section in Sections %} {% for Section in Sections %}
<option value="{{ Section.ID }}"> <option value="{{ Section.ID }}">{{ Section.Name }}</option>
{{ Section.Name }}
</option>
{% endfor %} {% endfor %}
</select> </select>
</div> </div>
<div class="col-sm-6 col-lg-3 mb-3 pt-3"> <div class="col-sm-6 col-lg-3 mb-3 pt-3">
{% if PermShow %} {% if PermShow %}
<div class="form-check form-switch"> <div class="form-check form-switch">
<input class="form-check-input" type="checkbox" role="switch" data-search-field="active" data-search-advanced="false" id="active" checked> <input
class="form-check-input"
type="checkbox"
role="switch"
data-search-field="active"
data-search-advanced="false"
id="active"
checked
/>
{% if MembersPage %} {% if MembersPage %}
<label class="form-check-label" for="active">Afficher membres actifs</label> <label class="form-check-label" for="active"
>Afficher membres actifs</label
>
{% else %} {% else %}
<label class="form-check-label" for="active">Afficher contacts actifs</label> <label class="form-check-label" for="active"
>Afficher contacts actifs</label
>
{% endif %} {% endif %}
</div> </div>
{% endif %} {% endif %}
{% if PermShowArchived %} {% if PermShowArchived %}
<div class="form-check form-switch"> <div class="form-check form-switch">
<input class="form-check-input" type="checkbox" role="switch" data-search-field="archive" data-search-advanced="false" id="archive"> <input
class="form-check-input"
type="checkbox"
role="switch"
data-search-field="archive"
data-search-advanced="false"
id="archive"
/>
{% if MembersPage %} {% if MembersPage %}
<label class="form-check-label" for="archive">Afficher membres archivés</label> <label class="form-check-label" for="archive"
>Afficher membres archivés</label
>
{% else %} {% else %}
<label class="form-check-label" for="archive">Afficher contacts archivés</label> <label class="form-check-label" for="archive"
>Afficher contacts archivés</label
>
{% endif %} {% endif %}
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="d-none" id="advanced-section"> <div class="d-none" id="advanced-section">
<div class="row"> <div class="row">
<div class="col-lg-6 mb-3"> <div class="col-lg-6 mb-3">
<label for="email" class="form-label">Email</label> <label for="email" class="form-label">Email</label>
<input type="text" class="form-control" id="email" data-search-field="email" data-search-advanced="true" name="email"> <input
type="text"
class="form-control"
id="email"
data-search-field="email"
data-search-advanced="true"
name="email"
/>
</div> </div>
<div class="col-lg-6 mb-3"> <div class="col-lg-6 mb-3">
<label for="phone" class="form-label">Téléphone</label> <label for="phone" class="form-label">Téléphone</label>
<input type="text" class="form-control" id="phone" data-search-field="phone" data-search-advanced="true" name="phone"> <input
type="text"
class="form-control"
id="phone"
data-search-field="phone"
data-search-advanced="true"
name="phone"
/>
</div> </div>
<div class="col-lg-6 mb-3"> <div class="col-lg-6 mb-3">
<label for="address" class="form-label">Adresse</label> <label for="address" class="form-label">Adresse</label>
<input type="text" class="form-control" id="address" data-search-field="address" data-search-advanced="true" name="address"> <input
type="text"
class="form-control"
id="address"
data-search-field="address"
data-search-advanced="true"
name="address"
/>
</div> </div>
<div class="col-sm-4 col-lg-2 mb-3"> <div class="col-sm-4 col-lg-2 mb-3">
<label for="postal_code" class="form-label">Code postal</label> <label for="postal_code" class="form-label">Code postal</label>
<input type="text" class="form-control" id="postal_code" data-search-field="postal_code" data-search-advanced="true" name="postal_code"> <input
type="text"
class="form-control"
id="postal_code"
data-search-field="postal_code"
data-search-advanced="true"
name="postal_code"
/>
</div> </div>
<div class="col-sm-8 col-lg-4 mb-3"> <div class="col-sm-8 col-lg-4 mb-3">
<label for="city" class="form-label">Lieu</label> <label for="city" class="form-label">Lieu</label>
<input type="text" class="form-control" id="city" data-search-field="city" data-search-advanced="true" name="city"> <input
type="text"
class="form-control"
id="city"
data-search-field="city"
data-search-advanced="true"
name="city"
/>
</div> </div>
</div> </div>
@ -132,15 +194,13 @@
<select class="form-select field-select" data-last-field=""> <select class="form-select field-select" data-last-field="">
<option value=""></option> <option value=""></option>
{% for Field in Fields %} {% for Field in Fields %}
<option value="{{ Field.ID }}"> <option value="{{ Field.ID }}">{{ Field.Name }}</option>
{{ Field.Name }}
</option>
{% endfor %} {% endfor %}
</select> </select>
</div> </div>
<div class="end-col col-lg-6 mb-3"> <div class="end-col col-lg-6 mb-3">
<label class="form-label">Valeur</label> <label class="form-label">Valeur</label>
<input type="text" class="form-control" disabled> <input type="text" class="form-control" disabled />
</div> </div>
</div> </div>
@ -149,10 +209,19 @@
<div class="row mt-2"> <div class="row mt-2">
<div class="col-6"> <div class="col-6">
<button class="btn btn-outline-primary" id="advanced" data-state="false" type="button"> <button
class="btn btn-outline-primary"
id="advanced"
data-state="false"
type="button"
>
<i class="bi-arrow-down me-1"></i> Avancé <i class="bi-arrow-down me-1"></i> Avancé
</button> </button>
<button class="btn btn-outline-primary" id="reset-search" type="button"> <button
class="btn btn-outline-primary"
id="reset-search"
type="button"
>
<i class="bi-arrow-clockwise me-1"></i> Réinitialiser <i class="bi-arrow-clockwise me-1"></i> Réinitialiser
</button> </button>
</div> </div>
@ -164,8 +233,18 @@
</div> </div>
<form id="search-form" method="get" class="d-none"> <form id="search-form" method="get" class="d-none">
<input type="hidden" id="search-page" name="p" value="{{ Pagination.CurrentPage }}"> <input
<input type="hidden" id="search-json" name="s" value="{{ SearchJSON }}"> type="hidden"
id="search-page"
name="p"
value="{{ Pagination.CurrentPage }}"
/>
<input
type="hidden"
id="search-json"
name="s"
value="{{ SearchJSON }}"
/>
</form> </form>
</div> </div>
@ -197,7 +276,8 @@
{% if Person.Address1 and (Person.PostalCode or Person.City) %} {% if Person.Address1 and (Person.PostalCode or Person.City) %}
&ndash; &ndash;
{% endif %} {% endif %}
{{ Person.PostalCode }} {{ Person.City }} {{ Person.PostalCode }}
{{ Person.City }}
</td> </td>
<td> <td>
{% if Person.SectionID %} {% if Person.SectionID %}
@ -212,7 +292,6 @@
<nav class="mt-3 mb-5"> <nav class="mt-3 mb-5">
<ul class="pagination justify-content-center"> <ul class="pagination justify-content-center">
{% if Pagination.CurrentPage <= 1 %} {% if Pagination.CurrentPage <= 1 %}
<li class="page-item disabled"> <li class="page-item disabled">
<a class="page-link" href="javascript:;"> <a class="page-link" href="javascript:;">
@ -226,10 +305,7 @@
</li> </li>
{% else %} {% else %}
<li class="page-item"> <li class="page-item">
<a <a class="page-link" href="?p=1&s={{ SearchJSON|urlencode }}">
class="page-link"
href="?p=1&s={{ SearchJSON|urlencode }}"
>
<i class="bi-rewind"></i> <i class="bi-rewind"></i>
</a> </a>
</li> </li>
@ -251,7 +327,6 @@
{% else %} {% else %}
class="page-link" class="page-link"
{% endif %} {% endif %}
href="?&p={{ i }}&s={{ SearchJSON|urlencode }}" href="?&p={{ i }}&s={{ SearchJSON|urlencode }}"
> >
{{ i }} {{ i }}
@ -290,10 +365,9 @@
{% endif %} {% endif %}
</ul> </ul>
</nav> </nav>
</div>
</div>
{% endblock %} {% endblock %}
{% block javascript %} {% block javascript %}
<script src="/static/search.js"></script> <script src="/static/search.js"></script>
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -18,13 +18,11 @@
</li> </li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Nom de famille</div>
Nom de famille
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -32,14 +30,12 @@
value="{{ Person.LastName }}" value="{{ Person.LastName }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Prénom</div>
Prénom
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -47,14 +43,12 @@
value="{{ Person.FirstName }}" value="{{ Person.FirstName }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Email</div>
Email
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -62,14 +56,12 @@
value="{{ Person.Email }}" value="{{ Person.Email }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Téléphone fixe</div>
Téléphone fixe
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -77,14 +69,12 @@
value="{{ Person.Phone }}" value="{{ Person.Phone }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="row mb-5"> <div class="row mb-5">
<div class="col-md-2"> <div class="col-md-2">Téléphone mobile</div>
Téléphone mobile
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -92,14 +82,12 @@
value="{{ Person.Mobile }}" value="{{ Person.Mobile }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="row mb-2"> <div class="row mb-2">
<div class="col-md-2"> <div class="col-md-2">Adresse</div>
Adresse
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -107,7 +95,7 @@
value="{{ Person.Address1 }}" value="{{ Person.Address1 }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
@ -119,7 +107,7 @@
value="{{ Person.Address2 }}" value="{{ Person.Address2 }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
@ -131,7 +119,7 @@
value="{{ Person.PostalCode }}" value="{{ Person.PostalCode }}"
disabled disabled
readonly readonly
> />
</div> </div>
<div class="col-md-7 col-lg-8"> <div class="col-md-7 col-lg-8">
<input <input
@ -140,14 +128,12 @@
value="{{ Person.City }}" value="{{ Person.City }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Section</div>
Section
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -155,38 +141,32 @@
value="{{ Person.Section.Name }}" value="{{ Person.Section.Name }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
{% if Fields %} {% if Fields %}
<div class="mt-4 mb-3"> <div class="mt-4 mb-3">
<span class="h4"> <span class="h4"> Champs supplémentaires </span>
Champs supplémentaires
</span>
</div> </div>
{% endif %} {% endif %}
{% for Field in Fields %} {% for Field in Fields %}
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">{{ Field.Name }}</div>
{{ Field.Name }}
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Field.FieldType == "text" %} {% if Field.FieldType == "text" %}
<input <input
type="text" type="text"
class="form-control" class="form-control"
disabled disabled
readonly readonly
{% for FieldValue in FieldValues %} {% for FieldValue in FieldValues %}
{% if FieldValue.FieldID == Field.ID %} {% if FieldValue.FieldID == Field.ID %}
value="{{ FieldValue.ValueString.String }}" value="{{ FieldValue.ValueString.String }}"
{% endif %} {% endif %}
{% endfor %} {% endfor %}
> />
{% endif %} {% endif %}
{% if Field.FieldType == "longtext" %} {% if Field.FieldType == "longtext" %}
@ -196,7 +176,9 @@
disabled disabled
readonly readonly
rows="4" rows="4"
>{% for FieldValue in FieldValues %}{% if FieldValue.FieldID == Field.ID %}{{ FieldValue.ValueString.String }}{% endif %}{% endfor %}</textarea> >
{% for FieldValue in FieldValues %}{% if FieldValue.FieldID == Field.ID %}{{ FieldValue.ValueString.String }}{% endif %}{% endfor %}</textarea
>
{% endif %} {% endif %}
{% if Field.FieldType == "number" %} {% if Field.FieldType == "number" %}
@ -205,13 +187,12 @@
class="form-control" class="form-control"
disabled disabled
readonly readonly
{% for FieldValue in FieldValues %} {% for FieldValue in FieldValues %}
{% if FieldValue.FieldID == Field.ID %} {% if FieldValue.FieldID == Field.ID %}
value="{{ FieldValue.ValueInt.Int64 }}" value="{{ FieldValue.ValueInt.Int64 }}"
{% endif %} {% endif %}
{% endfor %} {% endfor %}
> />
{% endif %} {% endif %}
{% if Field.FieldType == "date" %} {% if Field.FieldType == "date" %}
@ -220,13 +201,12 @@
class="form-control" class="form-control"
disabled disabled
readonly readonly
{% for FieldValue in FieldValues %} {% for FieldValue in FieldValues %}
{% if FieldValue.FieldID == Field.ID %} {% if FieldValue.FieldID == Field.ID %}
value="{{ FieldValue.ValueDate.Time|date:"02.01.2006" }}" value="{{ FieldValue.ValueDate.Time|date:"02.01.2006" }}"
{% endif %} {% endif %}
{% endfor %} {% endfor %}
> />
{% endif %} {% endif %}
{% if Field.FieldType == "list" and Field.List.Multi %} {% if Field.FieldType == "list" and Field.List.Multi %}
@ -236,8 +216,15 @@
{% if FieldValue.FieldID == Field.ID %} {% if FieldValue.FieldID == Field.ID %}
{% if FieldValue.FieldID == Field.ID %} {% if FieldValue.FieldID == Field.ID %}
<div class="mb-1"> <div class="mb-1">
<input type="checkbox" class="form-check-input me-2" checked disabled> <input
<label class="form-label">{{ FieldValue.ListItem.Value }}</label> type="checkbox"
class="form-check-input me-2"
checked
disabled
/>
<label class="form-label"
>{{ FieldValue.ListItem.Value }}</label
>
</div> </div>
{% endif %} {% endif %}
{% endif %} {% endif %}
@ -250,131 +237,163 @@
class="form-control" class="form-control"
disabled disabled
readonly readonly
{% for FieldValue in FieldValues %} {% for FieldValue in FieldValues %}
{% if FieldValue.FieldID == Field.ID %} {% if FieldValue.FieldID == Field.ID %}
value="{{ FieldValue.ListItem.Value }}" value="{{ FieldValue.ListItem.Value }}"
{% endif %} {% endif %}
{% endfor %} {% endfor %}
> />
{% endif %} {% endif %}
</div> </div>
</div> </div>
{% endfor %} {% endfor %}
<div class="my-5"> <div class="my-5">
{% if Person.IsMember %} {% if Person.IsMember %}
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
{% if !Person.DeletedAt.Valid %} {% if !Person.DeletedAt.Valid %}
{% if PermEdit %} {% if PermEdit %}
<a class="btn btn-outline-primary" href="/members/{{ Person.ID }}/edit"> <a
class="btn btn-outline-primary"
href="/members/{{ Person.ID }}/edit"
>
<i class="bi-pencil-square"></i> <i class="bi-pencil-square"></i>
Modifier Modifier
</a> </a>
{% endif %} {% endif %}
{% if PermConvert %} {% if PermConvert %}
<button class="btn btn-outline-secondary" type="button" data-bs-toggle="modal" data-bs-target="#modal-convert"> <button
class="btn btn-outline-secondary"
type="button"
data-bs-toggle="modal"
data-bs-target="#modal-convert"
>
<i class="bi-arrow-repeat"></i> <i class="bi-arrow-repeat"></i>
Convertir en contact Convertir en contact
</button> </button>
{% endif %} {% endif %}
{% endif %} {% endif %}
</div> </div>
<div class="col-md-6 text-md-end mt-2 mt-md-0"> <div class="col-md-6 text-md-end mt-2 mt-md-0">
{% if Person.DeletedAt.Valid %} {% if Person.DeletedAt.Valid %}
{% if PermRestore %} {% if PermRestore %}
<button class="btn btn-outline-secondary" type="button" data-bs-toggle="modal" data-bs-target="#modal-restore"> <button
class="btn btn-outline-secondary"
type="button"
data-bs-toggle="modal"
data-bs-target="#modal-restore"
>
<i class="bi-person-check"></i> <i class="bi-person-check"></i>
Restaurer Restaurer
</button> </button>
{% endif %} {% endif %}
{% else %} {% else %}
{% if PermArchive %} {% if PermArchive %}
<button class="btn btn-outline-secondary" type="button" data-bs-toggle="modal" data-bs-target="#modal-archive"> <button
class="btn btn-outline-secondary"
type="button"
data-bs-toggle="modal"
data-bs-target="#modal-archive"
>
<i class="bi-person-slash"></i> <i class="bi-person-slash"></i>
Archiver Archiver
</button> </button>
{% endif %} {% endif %}
{% endif %} {% endif %}
{% if PermPurge %} {% if PermPurge %}
<button class="btn btn-outline-danger" type="button" data-bs-toggle="modal" data-bs-target="#modal-delete"> <button
class="btn btn-outline-danger"
type="button"
data-bs-toggle="modal"
data-bs-target="#modal-delete"
>
<i class="bi-trash3"></i> <i class="bi-trash3"></i>
Supprimer Supprimer
</button> </button>
{% endif %} {% endif %}
</div> </div>
</div> </div>
{% else %} {% else %}
<div class="row"> <div class="row">
<div class="col-md-6"> <div class="col-md-6">
{% if !Person.DeletedAt.Valid %} {% if !Person.DeletedAt.Valid %}
{% if PermEdit %} {% if PermEdit %}
<a class="btn btn-outline-primary" href="/contacts/{{ Person.ID }}/edit"> <a
class="btn btn-outline-primary"
href="/contacts/{{ Person.ID }}/edit"
>
<i class="bi-pencil-square"></i> <i class="bi-pencil-square"></i>
Modifier Modifier
</a> </a>
{% endif %} {% endif %}
{% if PermConvert %} {% if PermConvert %}
<button class="btn btn-outline-secondary" type="button" data-bs-toggle="modal" data-bs-target="#modal-convert"> <button
class="btn btn-outline-secondary"
type="button"
data-bs-toggle="modal"
data-bs-target="#modal-convert"
>
<i class="bi-arrow-repeat"></i> <i class="bi-arrow-repeat"></i>
Convertir en membre Convertir en membre
</button> </button>
{% endif %} {% endif %}
{% endif %} {% endif %}
</div> </div>
<div class="col-md-6 text-md-end mt-2 mt-md-0"> <div class="col-md-6 text-md-end mt-2 mt-md-0">
{% if Person.DeletedAt.Valid %} {% if Person.DeletedAt.Valid %}
{% if PermRestore %} {% if PermRestore %}
<button class="btn btn-outline-secondary" type="button" data-bs-toggle="modal" data-bs-target="#modal-restore"> <button
class="btn btn-outline-secondary"
type="button"
data-bs-toggle="modal"
data-bs-target="#modal-restore"
>
<i class="bi-person-check"></i> <i class="bi-person-check"></i>
Restaurer Restaurer
</button> </button>
{% endif %} {% endif %}
{% else %} {% else %}
{% if PermArchive %} {% if PermArchive %}
<button class="btn btn-outline-secondary" type="button" data-bs-toggle="modal" data-bs-target="#modal-archive"> <button
class="btn btn-outline-secondary"
type="button"
data-bs-toggle="modal"
data-bs-target="#modal-archive"
>
<i class="bi-person-slash"></i> <i class="bi-person-slash"></i>
Archiver Archiver
</button> </button>
{% endif %} {% endif %}
{% endif %} {% endif %}
{% if PermPurge %} {% if PermPurge %}
<button class="btn btn-outline-danger" type="button" data-bs-toggle="modal" data-bs-target="#modal-delete"> <button
class="btn btn-outline-danger"
type="button"
data-bs-toggle="modal"
data-bs-target="#modal-delete"
>
<i class="bi-trash3"></i> <i class="bi-trash3"></i>
Supprimer Supprimer
</button> </button>
{% endif %} {% endif %}
</div> </div>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div id="modal-delete" class="modal" tabindex="-1"> <div id="modal-delete" class="modal" tabindex="-1">
<div class="modal-dialog modal-dialog-centered"> <div class="modal-dialog modal-dialog-centered">
<div class="modal-content"> <div class="modal-content">
<div class="modal-body"> <div class="modal-body">
@ -385,20 +404,32 @@
{% endif %} {% endif %}
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal"> <button
type="button"
class="btn btn-outline-secondary"
data-bs-dismiss="modal"
>
<i class="bi-x-lg me-1"></i> <i class="bi-x-lg me-1"></i>
Annuler Annuler
</button> </button>
{% if Person.IsMember %} {% if Person.IsMember %}
<form action="/members/{{ Person.ID }}/purge" method="post" class="d-inline p-0"> <form
action="/members/{{ Person.ID }}/purge"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-danger" type="submit"> <button class="btn btn-outline-danger" type="submit">
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
</button> </button>
</form> </form>
{% else %} {% else %}
<form action="/contacts/{{ Person.ID }}/purge" method="post" class="d-inline p-0"> <form
action="/contacts/{{ Person.ID }}/purge"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-danger" type="submit"> <button class="btn btn-outline-danger" type="submit">
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
@ -408,9 +439,9 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div id="modal-archive" class="modal" tabindex="-1"> <div id="modal-archive" class="modal" tabindex="-1">
<div class="modal-dialog modal-dialog-centered"> <div class="modal-dialog modal-dialog-centered">
<div class="modal-content"> <div class="modal-content">
<div class="modal-body"> <div class="modal-body">
@ -421,20 +452,32 @@
{% endif %} {% endif %}
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal"> <button
type="button"
class="btn btn-outline-secondary"
data-bs-dismiss="modal"
>
<i class="bi-x-lg me-1"></i> <i class="bi-x-lg me-1"></i>
Annuler Annuler
</button> </button>
{% if Person.IsMember %} {% if Person.IsMember %}
<form action="/members/{{ Person.ID }}/archive" method="post" class="d-inline p-0"> <form
action="/members/{{ Person.ID }}/archive"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-primary" type="submit"> <button class="btn btn-outline-primary" type="submit">
<i class="bi-person-slash"></i> <i class="bi-person-slash"></i>
Archiver Archiver
</button> </button>
</form> </form>
{% else %} {% else %}
<form action="/contacts/{{ Person.ID }}/archive" method="post" class="d-inline p-0"> <form
action="/contacts/{{ Person.ID }}/archive"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-primary" type="submit"> <button class="btn btn-outline-primary" type="submit">
<i class="bi-person-slash"></i> <i class="bi-person-slash"></i>
Archiver Archiver
@ -444,9 +487,9 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div id="modal-restore" class="modal" tabindex="-1"> <div id="modal-restore" class="modal" tabindex="-1">
<div class="modal-dialog modal-dialog-centered"> <div class="modal-dialog modal-dialog-centered">
<div class="modal-content"> <div class="modal-content">
<div class="modal-body"> <div class="modal-body">
@ -457,20 +500,32 @@
{% endif %} {% endif %}
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal"> <button
type="button"
class="btn btn-outline-secondary"
data-bs-dismiss="modal"
>
<i class="bi-x-lg me-1"></i> <i class="bi-x-lg me-1"></i>
Annuler Annuler
</button> </button>
{% if Person.IsMember %} {% if Person.IsMember %}
<form action="/members/{{ Person.ID }}/restore" method="post" class="d-inline p-0"> <form
action="/members/{{ Person.ID }}/restore"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-primary" type="submit"> <button class="btn btn-outline-primary" type="submit">
<i class="bi-person-check"></i> <i class="bi-person-check"></i>
Restaurer Restaurer
</button> </button>
</form> </form>
{% else %} {% else %}
<form action="/contacts/{{ Person.ID }}/restore" method="post" class="d-inline p-0"> <form
action="/contacts/{{ Person.ID }}/restore"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-primary" type="submit"> <button class="btn btn-outline-primary" type="submit">
<i class="bi-person-check"></i> <i class="bi-person-check"></i>
Restaurer Restaurer
@ -480,9 +535,9 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div id="modal-convert" class="modal" tabindex="-1"> <div id="modal-convert" class="modal" tabindex="-1">
<div class="modal-dialog modal-dialog-centered"> <div class="modal-dialog modal-dialog-centered">
<div class="modal-content"> <div class="modal-content">
<div class="modal-body"> <div class="modal-body">
@ -493,20 +548,32 @@
{% endif %} {% endif %}
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal"> <button
type="button"
class="btn btn-outline-secondary"
data-bs-dismiss="modal"
>
<i class="bi-x-lg me-1"></i> <i class="bi-x-lg me-1"></i>
Annuler Annuler
</button> </button>
{% if Person.IsMember %} {% if Person.IsMember %}
<form action="/members/{{ Person.ID }}/convert" method="post" class="d-inline p-0"> <form
action="/members/{{ Person.ID }}/convert"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-primary" type="submit"> <button class="btn btn-outline-primary" type="submit">
<i class="bi-arrow-repeat"></i> <i class="bi-arrow-repeat"></i>
Convertir Convertir
</button> </button>
</form> </form>
{% else %} {% else %}
<form action="/contacts/{{ Person.ID }}/convert" method="post" class="d-inline p-0"> <form
action="/contacts/{{ Person.ID }}/convert"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-primary" type="submit"> <button class="btn btn-outline-primary" type="submit">
<i class="bi-arrow-repeat"></i> <i class="bi-arrow-repeat"></i>
Convertir Convertir
@ -516,5 +583,5 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -34,7 +34,7 @@
{% endif %} {% endif %}
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
{% if Errors %} {% if Errors %}
@ -48,7 +48,6 @@
{% endif %} {% endif %}
<form id="person" method="post"> <form id="person" method="post">
<div class="row mb-3"> <div class="row mb-3">
<label for="last_name" class="form-label col-md-2"> <label for="last_name" class="form-label col-md-2">
Nom de famille Nom de famille
@ -62,14 +61,12 @@
value="{{ Person.LastName }}" value="{{ Person.LastName }}"
autofocus autofocus
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<label for="first_name" class="form-label col-md-2"> <label for="first_name" class="form-label col-md-2"> Prénom </label>
Prénom
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="first_name" id="first_name"
@ -79,14 +76,12 @@
required required
value="{{ Person.FirstName }}" value="{{ Person.FirstName }}"
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<label for="email" class="form-label col-md-2"> <label for="email" class="form-label col-md-2"> Email </label>
Email
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="email" id="email"
@ -95,14 +90,12 @@
name="email" name="email"
value="{{ Person.Email }}" value="{{ Person.Email }}"
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<label for="phone" class="form-label col-md-2"> <label for="phone" class="form-label col-md-2"> Téléphone fixe </label>
Téléphone fixe
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="phone" id="phone"
@ -111,7 +104,7 @@
name="phone" name="phone"
value="{{ Person.Phone }}" value="{{ Person.Phone }}"
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
@ -127,14 +120,12 @@
name="mobile" name="mobile"
value="{{ Person.Mobile }}" value="{{ Person.Mobile }}"
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
<div class="row mb-2"> <div class="row mb-2">
<label for="address1" class="form-label col-md-2"> <label for="address1" class="form-label col-md-2"> Adresse </label>
Adresse
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="address1" id="address1"
@ -144,7 +135,7 @@
value="{{ Person.Address1 }}" value="{{ Person.Address1 }}"
placeholder="Ligne 1" placeholder="Ligne 1"
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
@ -158,7 +149,7 @@
value="{{ Person.Address2 }}" value="{{ Person.Address2 }}"
placeholder="Ligne 2" placeholder="Ligne 2"
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
@ -173,7 +164,7 @@
pattern="[0-9]{4}" pattern="[0-9]{4}"
value="{{ Person.PostalCode }}" value="{{ Person.PostalCode }}"
autocomplete="off" autocomplete="off"
> />
</div> </div>
<div class="col-md-7 col-lg-8"> <div class="col-md-7 col-lg-8">
<input <input
@ -184,14 +175,12 @@
value="{{ Person.City }}" value="{{ Person.City }}"
placeholder="Lieu" placeholder="Lieu"
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<label for="section" class="form-label col-md-2"> <label for="section" class="form-label col-md-2"> Section </label>
Section
</label>
<div class="col-md-10"> <div class="col-md-10">
<select <select
class="form-select" class="form-select"
@ -216,9 +205,7 @@
{% if Fields %} {% if Fields %}
<div class="mt-4 mb-3"> <div class="mt-4 mb-3">
<span class="h4"> <span class="h4"> Champs supplémentaires </span>
Champs supplémentaires
</span>
</div> </div>
{% endif %} {% endif %}
@ -228,7 +215,6 @@
{{ Field.Name }} {{ Field.Name }}
</label> </label>
<div class="col-md-10"> <div class="col-md-10">
{% if Field.FieldType == "text" %} {% if Field.FieldType == "text" %}
<input <input
id="field-{{ Field.ID }}" id="field-{{ Field.ID }}"
@ -236,13 +222,12 @@
type="text" type="text"
name="field-{{ Field.ID }}" name="field-{{ Field.ID }}"
autocomplete="off" autocomplete="off"
{% for FieldValue in FieldValues %} {% for FieldValue in FieldValues %}
{% if FieldValue.FieldID == Field.ID %} {% if FieldValue.FieldID == Field.ID %}
value="{{ FieldValue.ValueString.String }}" value="{{ FieldValue.ValueString.String }}"
{% endif %} {% endif %}
{% endfor %} {% endfor %}
> />
{% endif %} {% endif %}
{% if Field.FieldType == "longtext" %} {% if Field.FieldType == "longtext" %}
@ -252,7 +237,9 @@
name="field-{{ Field.ID }}" name="field-{{ Field.ID }}"
rows="4" rows="4"
autocomplete="off" autocomplete="off"
>{% for FieldValue in FieldValues %}{% if FieldValue.FieldID == Field.ID %}{{ FieldValue.ValueString.String }}{% endif %}{% endfor %}</textarea> >
{% for FieldValue in FieldValues %}{% if FieldValue.FieldID == Field.ID %}{{ FieldValue.ValueString.String }}{% endif %}{% endfor %}</textarea
>
{% endif %} {% endif %}
{% if Field.FieldType == "number" %} {% if Field.FieldType == "number" %}
@ -262,13 +249,12 @@
type="number" type="number"
name="field-{{ Field.ID }}" name="field-{{ Field.ID }}"
autocomplete="off" autocomplete="off"
{% for FieldValue in FieldValues %} {% for FieldValue in FieldValues %}
{% if FieldValue.FieldID == Field.ID %} {% if FieldValue.FieldID == Field.ID %}
value="{{ FieldValue.ValueInt.Int64 }}" value="{{ FieldValue.ValueInt.Int64 }}"
{% endif %} {% endif %}
{% endfor %} {% endfor %}
> />
{% endif %} {% endif %}
{% if Field.FieldType == "date" %} {% if Field.FieldType == "date" %}
@ -278,13 +264,12 @@
type="date" type="date"
name="field-{{ Field.ID }}" name="field-{{ Field.ID }}"
autocomplete="off" autocomplete="off"
{% for FieldValue in FieldValues %} {% for FieldValue in FieldValues %}
{% if FieldValue.FieldID == Field.ID %} {% if FieldValue.FieldID == Field.ID %}
value="{{ FieldValue.ValueDate.Time|date:"2006-01-02" }}" value="{{ FieldValue.ValueDate.Time|date:"2006-01-02" }}"
{% endif %} {% endif %}
{% endfor %} {% endfor %}
> />
{% endif %} {% endif %}
{% if Field.FieldType == "list" and !Field.List.Multi %} {% if Field.FieldType == "list" and !Field.List.Multi %}
@ -298,7 +283,6 @@
{% for ListItem in Field.List.ListItems %} {% for ListItem in Field.List.ListItems %}
<option <option
value="{{ ListItem.ID }}" value="{{ ListItem.ID }}"
{% if !Person.ID and ListItem.Default %} {% if !Person.ID and ListItem.Default %}
selected selected
{% endif %} {% endif %}
@ -324,7 +308,6 @@
id="field-{{ Field.ID }}-{{ ListItem.ID }}" id="field-{{ Field.ID }}-{{ ListItem.ID }}"
name="field-{{ Field.ID }}-{{ ListItem.ID }}" name="field-{{ Field.ID }}-{{ ListItem.ID }}"
autocomplete="off" autocomplete="off"
{% if !Person.ID and ListItem.Default %} {% if !Person.ID and ListItem.Default %}
checked checked
{% endif %} {% endif %}
@ -334,7 +317,7 @@
checked checked
{% endif %} {% endif %}
{% endfor %} {% endfor %}
> />
<label <label
for="field-{{ Field.ID }}-{{ ListItem.ID }}" for="field-{{ Field.ID }}-{{ ListItem.ID }}"
class="form-label" class="form-label"
@ -344,7 +327,6 @@
</div> </div>
{% endfor %} {% endfor %}
{% endif %} {% endif %}
</div> </div>
</div> </div>
{% endfor %} {% endfor %}
@ -356,6 +338,5 @@
</button> </button>
</div> </div>
</form> </form>
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -11,13 +11,11 @@
<li class="breadcrumb-item active">{{ Role.Name }}</li> <li class="breadcrumb-item active">{{ Role.Name }}</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Nom</div>
Nom
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -25,545 +23,349 @@
value="{{ Role.Name }}" value="{{ Role.Name }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="mt-4 mb-3"> <div class="mt-4 mb-3">
<span class="h4"> <span class="h4"> Permissions membres </span>
Permissions membres
</span>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Afficher membres</div>
Afficher membres
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.ShowMember %} {% if Role.ShowMember %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Créer membres</div>
Créer membres
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.CreateMember %} {% if Role.CreateMember %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Modifier membres</div>
Modifier membres
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.EditMember %} {% if Role.EditMember %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Afficher membres archivés</div>
Afficher membres archivés
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.ShowArchivedMember %} {% if Role.ShowArchivedMember %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Archiver membres</div>
Archiver membres
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.ArchiveMember %} {% if Role.ArchiveMember %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Restaurer membres</div>
Restaurer membres
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.RestoreMember %} {% if Role.RestoreMember %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Purger membres (suppression définitive)</div>
Purger membres (suppression définitive)
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.PurgeMember %} {% if Role.PurgeMember %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Convertir membres en contacts</div>
Convertir membres en contacts
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.ConvertMemberToContact %} {% if Role.ConvertMemberToContact %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="mt-4 mb-3"> <div class="mt-4 mb-3">
<span class="h4"> <span class="h4"> Permissions contacts </span>
Permissions contacts
</span>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Afficher contacts</div>
Afficher contacts
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.ShowContact %} {% if Role.ShowContact %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Créer contacts</div>
Créer contacts
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.CreateContact %} {% if Role.CreateContact %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Modifier contacts</div>
Modifier contacts
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.EditContact %} {% if Role.EditContact %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Afficher contacts archivés</div>
Afficher contacts archivés
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.ShowArchivedContact %} {% if Role.ShowArchivedContact %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Archiver contacts</div>
Archiver contacts
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.ArchiveContact %} {% if Role.ArchiveContact %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Restaurer contacts</div>
Restaurer contacts
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.RestoreContact %} {% if Role.RestoreContact %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Purger contacts (suppression définitive)</div>
Purger contacts (suppression définitive)
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.PurgeContact %} {% if Role.PurgeContact %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Convertir contacts en membres</div>
Convertir contacts en membres
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Role.ConvertContactToMember %} {% if Role.ConvertContactToMember %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
@ -571,34 +373,49 @@
<div class="my-4 row"> <div class="my-4 row">
<div class="col-6"> <div class="col-6">
<a class="btn btn-outline-primary" href="/admin/roles/{{ Role.ID }}/edit"> <a
class="btn btn-outline-primary"
href="/admin/roles/{{ Role.ID }}/edit"
>
<i class="bi-pencil-square"></i> <i class="bi-pencil-square"></i>
Modifier Modifier
</a> </a>
</div> </div>
<div class="col-6 text-end"> <div class="col-6 text-end">
<button type="button" class="btn btn-outline-danger" data-bs-toggle="modal" data-bs-target="#modal-delete"> <button
type="button"
class="btn btn-outline-danger"
data-bs-toggle="modal"
data-bs-target="#modal-delete"
>
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
</button> </button>
</div> </div>
</div> </div>
</div>
</div> <div id="modal-delete" class="modal" tabindex="-1">
<div id="modal-delete" class="modal" tabindex="-1">
<div class="modal-dialog modal-dialog-centered"> <div class="modal-dialog modal-dialog-centered">
<div class="modal-content"> <div class="modal-content">
<div class="modal-body"> <div class="modal-body">
<p>Êtes-vous sûr de vouloir supprimer ce rôle ?</p> <p>Êtes-vous sûr de vouloir supprimer ce rôle ?</p>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal"> <button
type="button"
class="btn btn-outline-secondary"
data-bs-dismiss="modal"
>
<i class="bi-x-lg me-1"></i> <i class="bi-x-lg me-1"></i>
Annuler Annuler
</button> </button>
<form action="/admin/roles/{{ Role.ID }}/delete" method="post" class="d-inline p-0"> <form
action="/admin/roles/{{ Role.ID }}/delete"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-danger" type="submit"> <button class="btn btn-outline-danger" type="submit">
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
@ -607,5 +424,5 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -10,14 +10,16 @@
<li class="breadcrumb-item"><a href="/admin/roles">Rôles</a></li> <li class="breadcrumb-item"><a href="/admin/roles">Rôles</a></li>
{% if Role.ID %} {% if Role.ID %}
<li class="breadcrumb-item"><a href="/admin/roles/{{ Role.ID }}">{{ Role.Name }}</a></li> <li class="breadcrumb-item">
<a href="/admin/roles/{{ Role.ID }}">{{ Role.Name }}</a>
</li>
<li class="breadcrumb-item active">Modifier</li> <li class="breadcrumb-item active">Modifier</li>
{% else %} {% else %}
<li class="breadcrumb-item active">Ajouter</li> <li class="breadcrumb-item active">Ajouter</li>
{% endif %} {% endif %}
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
{% if Errors %} {% if Errors %}
@ -31,11 +33,8 @@
{% endif %} {% endif %}
<form id="role" method="post"> <form id="role" method="post">
<div class="row mb-3"> <div class="row mb-3">
<label for="name" class="form-label col-md-2"> <label for="name" class="form-label col-md-2"> Nom </label>
Nom
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="name" id="name"
@ -46,21 +45,17 @@
value="{{ Role.Name }}" value="{{ Role.Name }}"
autocomplete="off" autocomplete="off"
autofocus autofocus
> />
</div> </div>
</div> </div>
<div class="mt-4 mb-3 d-md-none"> <div class="mt-4 mb-3 d-md-none">
<span class="h4"> <span class="h4"> Permissions membres </span>
Permissions membres
</span>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">
<div class="d-none d-md-block"> <div class="d-none d-md-block">Permissions membres</div>
Permissions membres
</div>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
@ -70,10 +65,8 @@
name="show_member" name="show_member"
autocomplete="off" autocomplete="off"
{% if Role.ShowMember %}checked{% endif %} {% if Role.ShowMember %}checked{% endif %}
> />
<label for="show_member" class="form-label"> <label for="show_member" class="form-label"> Afficher membres </label>
Afficher membres
</label>
</div> </div>
</div> </div>
@ -86,10 +79,8 @@
name="create_member" name="create_member"
autocomplete="off" autocomplete="off"
{% if Role.CreateMember %}checked{% endif %} {% if Role.CreateMember %}checked{% endif %}
> />
<label for="create_member" class="form-label"> <label for="create_member" class="form-label"> Créer membres </label>
Créer membres
</label>
</div> </div>
</div> </div>
@ -102,10 +93,8 @@
name="edit_member" name="edit_member"
autocomplete="off" autocomplete="off"
{% if Role.EditMember %}checked{% endif %} {% if Role.EditMember %}checked{% endif %}
> />
<label for="edit_member" class="form-label"> <label for="edit_member" class="form-label"> Modifier membres </label>
Modifier membres
</label>
</div> </div>
</div> </div>
@ -118,7 +107,7 @@
name="show_archived_member" name="show_archived_member"
autocomplete="off" autocomplete="off"
{% if Role.ShowArchivedMember %}checked{% endif %} {% if Role.ShowArchivedMember %}checked{% endif %}
> />
<label for="show_archived_member" class="form-label"> <label for="show_archived_member" class="form-label">
Afficher membres archivés Afficher membres archivés
</label> </label>
@ -134,7 +123,7 @@
name="archive_member" name="archive_member"
autocomplete="off" autocomplete="off"
{% if Role.ArchiveMember %}checked{% endif %} {% if Role.ArchiveMember %}checked{% endif %}
> />
<label for="archive_member" class="form-label"> <label for="archive_member" class="form-label">
Archiver membres Archiver membres
</label> </label>
@ -150,7 +139,7 @@
name="restore_member" name="restore_member"
autocomplete="off" autocomplete="off"
{% if Role.RestoreMember %}checked{% endif %} {% if Role.RestoreMember %}checked{% endif %}
> />
<label for="restore_member" class="form-label"> <label for="restore_member" class="form-label">
Restaurer membres Restaurer membres
</label> </label>
@ -166,7 +155,7 @@
name="purge_member" name="purge_member"
autocomplete="off" autocomplete="off"
{% if Role.PurgeMember %}checked{% endif %} {% if Role.PurgeMember %}checked{% endif %}
> />
<label for="purge_member" class="form-label"> <label for="purge_member" class="form-label">
Purger membres (suppression définitive) Purger membres (suppression définitive)
</label> </label>
@ -182,7 +171,7 @@
name="convert_member_to_contact" name="convert_member_to_contact"
autocomplete="off" autocomplete="off"
{% if Role.ConvertMemberToContact %}checked{% endif %} {% if Role.ConvertMemberToContact %}checked{% endif %}
> />
<label for="convert_member_to_contact" class="form-label"> <label for="convert_member_to_contact" class="form-label">
Convertir membres en contacts Convertir membres en contacts
</label> </label>
@ -190,16 +179,12 @@
</div> </div>
<div class="mt-4 mb-3 d-md-none"> <div class="mt-4 mb-3 d-md-none">
<span class="h4"> <span class="h4"> Permissions contacts </span>
Permissions contacts
</span>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">
<div class="d-none d-md-block"> <div class="d-none d-md-block">Permissions contacts</div>
Permissions contacts
</div>
</div> </div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
@ -209,7 +194,7 @@
name="show_contact" name="show_contact"
autocomplete="off" autocomplete="off"
{% if Role.ShowContact %}checked{% endif %} {% if Role.ShowContact %}checked{% endif %}
> />
<label for="show_contact" class="form-label"> <label for="show_contact" class="form-label">
Afficher contacts Afficher contacts
</label> </label>
@ -225,7 +210,7 @@
name="create_contact" name="create_contact"
autocomplete="off" autocomplete="off"
{% if Role.CreateContact %}checked{% endif %} {% if Role.CreateContact %}checked{% endif %}
> />
<label for="create_contact" class="form-label"> <label for="create_contact" class="form-label">
Créer contacts Créer contacts
</label> </label>
@ -241,7 +226,7 @@
name="edit_contact" name="edit_contact"
autocomplete="off" autocomplete="off"
{% if Role.EditContact %}checked{% endif %} {% if Role.EditContact %}checked{% endif %}
> />
<label for="edit_contact" class="form-label"> <label for="edit_contact" class="form-label">
Modifier contacts Modifier contacts
</label> </label>
@ -257,7 +242,7 @@
name="show_archived_contact" name="show_archived_contact"
autocomplete="off" autocomplete="off"
{% if Role.ShowArchivedContact %}checked{% endif %} {% if Role.ShowArchivedContact %}checked{% endif %}
> />
<label for="show_archived_contact" class="form-label"> <label for="show_archived_contact" class="form-label">
Afficher contacts archivés Afficher contacts archivés
</label> </label>
@ -273,7 +258,7 @@
name="archive_contact" name="archive_contact"
autocomplete="off" autocomplete="off"
{% if Role.ArchiveContact %}checked{% endif %} {% if Role.ArchiveContact %}checked{% endif %}
> />
<label for="archive_contact" class="form-label"> <label for="archive_contact" class="form-label">
Archiver contacts Archiver contacts
</label> </label>
@ -289,7 +274,7 @@
name="restore_contact" name="restore_contact"
autocomplete="off" autocomplete="off"
{% if Role.RestoreContact %}checked{% endif %} {% if Role.RestoreContact %}checked{% endif %}
> />
<label for="restore_contact" class="form-label"> <label for="restore_contact" class="form-label">
Restaurer contacts Restaurer contacts
</label> </label>
@ -305,7 +290,7 @@
name="purge_contact" name="purge_contact"
autocomplete="off" autocomplete="off"
{% if Role.PurgeContact %}checked{% endif %} {% if Role.PurgeContact %}checked{% endif %}
> />
<label for="purge_contact" class="form-label"> <label for="purge_contact" class="form-label">
Purger contacts (suppression définitive) Purger contacts (suppression définitive)
</label> </label>
@ -321,7 +306,7 @@
name="convert_contact_to_member" name="convert_contact_to_member"
autocomplete="off" autocomplete="off"
{% if Role.ConvertContactToMember %}checked{% endif %} {% if Role.ConvertContactToMember %}checked{% endif %}
> />
<label for="convert_contact_to_member" class="form-label"> <label for="convert_contact_to_member" class="form-label">
Convertir contacts en membres Convertir contacts en membres
</label> </label>
@ -335,6 +320,5 @@
</button> </button>
</div> </div>
</form> </form>
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container my-4"> <div class="container my-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -10,7 +10,7 @@
<li class="breadcrumb-item active">Rôles</li> <li class="breadcrumb-item active">Rôles</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="my-3 text-end"> <div class="my-3 text-end">
@ -20,7 +20,6 @@
</a> </a>
</div> </div>
{% if Roles %} {% if Roles %}
<div class="table-responsive"> <div class="table-responsive">
<table class="table"> <table class="table">
@ -33,9 +32,7 @@
{% for Role in Roles %} {% for Role in Roles %}
<tr> <tr>
<td> <td>
<a href="/admin/roles/{{ Role.ID }}"> <a href="/admin/roles/{{ Role.ID }}"> {{ Role.Name }} </a>
{{ Role.Name }}
</a>
</td> </td>
</tr> </tr>
{% endfor %} {% endfor %}
@ -43,10 +40,7 @@
</table> </table>
</div> </div>
{% else %} {% else %}
<div class="my-4"> <div class="my-4">Pas de rôle pour le moment</div>
Pas de rôle pour le moment
</div>
{% endif %} {% endif %}
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,23 +1,23 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
<li class="breadcrumb-item"><a href="/">Accueil</a></li> <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">Administration</a></li>
<li class="breadcrumb-item"><a href="/admin/sections">Sections</a></li> <li class="breadcrumb-item">
<a href="/admin/sections">Sections</a>
</li>
<li class="breadcrumb-item active">{{ Section.Name }}</li> <li class="breadcrumb-item active">{{ Section.Name }}</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Nom</div>
Nom
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -25,14 +25,12 @@
value="{{ Section.Name }}" value="{{ Section.Name }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Nom technique</div>
Nom technique
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -40,14 +38,12 @@
value="{{ Section.ShortName }}" value="{{ Section.ShortName }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Section parente</div>
Section parente
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Section.ParentSectionID %} {% if Section.ParentSectionID %}
<input <input
@ -56,84 +52,55 @@
value="{{ Section.ParentSection.Name }}" value="{{ Section.ParentSection.Name }}"
disabled disabled
readonly readonly
> />
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Peut contenir des membres</div>
Peut contenir des membres
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Section.ContainsMembers %} {% if Section.ContainsMembers %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Peut contenir des contacts</div>
Peut contenir des contacts
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if Section.ContainsContacts %} {% if Section.ContainsContacts %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
@ -141,34 +108,49 @@
<div class="my-4 row"> <div class="my-4 row">
<div class="col-6"> <div class="col-6">
<a class="btn btn-outline-primary" href="/admin/sections/{{ Section.ID }}/edit"> <a
class="btn btn-outline-primary"
href="/admin/sections/{{ Section.ID }}/edit"
>
<i class="bi-pencil-square"></i> <i class="bi-pencil-square"></i>
Modifier Modifier
</a> </a>
</div> </div>
<div class="col-6 text-end"> <div class="col-6 text-end">
<button type="button" class="btn btn-outline-danger" data-bs-toggle="modal" data-bs-target="#modal-delete"> <button
type="button"
class="btn btn-outline-danger"
data-bs-toggle="modal"
data-bs-target="#modal-delete"
>
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
</button> </button>
</div> </div>
</div> </div>
</div>
</div> <div id="modal-delete" class="modal" tabindex="-1">
<div id="modal-delete" class="modal" tabindex="-1">
<div class="modal-dialog modal-dialog-centered"> <div class="modal-dialog modal-dialog-centered">
<div class="modal-content"> <div class="modal-content">
<div class="modal-body"> <div class="modal-body">
<p>Êtes-vous sûr de vouloir supprimer cette section ?</p> <p>Êtes-vous sûr de vouloir supprimer cette section ?</p>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal"> <button
type="button"
class="btn btn-outline-secondary"
data-bs-dismiss="modal"
>
<i class="bi-x-lg me-1"></i> <i class="bi-x-lg me-1"></i>
Annuler Annuler
</button> </button>
<form action="/admin/sections/{{ Section.ID }}/delete" method="post" class="d-inline p-0"> <form
action="/admin/sections/{{ Section.ID }}/delete"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-danger" type="submit"> <button class="btn btn-outline-danger" type="submit">
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
@ -177,5 +159,5 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

View file

@ -1,23 +1,27 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
<li class="breadcrumb-item"><a href="/">Accueil</a></li> <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">Administration</a></li>
<li class="breadcrumb-item"><a href="/admin/sections">Sections</a></li> <li class="breadcrumb-item">
<a href="/admin/sections">Sections</a>
</li>
{% if Section.ID %} {% if Section.ID %}
<li class="breadcrumb-item"><a href="/admin/sections/{{ Section.ID }}">{{ Section.Name }}</a></li> <li class="breadcrumb-item">
<a href="/admin/sections/{{ Section.ID }}">{{ Section.Name }}</a>
</li>
<li class="breadcrumb-item active">Modifier</li> <li class="breadcrumb-item active">Modifier</li>
{% else %} {% else %}
<li class="breadcrumb-item active">Ajouter</li> <li class="breadcrumb-item active">Ajouter</li>
{% endif %} {% endif %}
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
{% if Errors %} {% if Errors %}
@ -31,11 +35,8 @@
{% endif %} {% endif %}
<form id="section" method="post"> <form id="section" method="post">
<div class="row mb-3"> <div class="row mb-3">
<label for="name" class="form-label col-md-2"> <label for="name" class="form-label col-md-2"> Nom </label>
Nom
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="name" id="name"
@ -46,7 +47,7 @@
value="{{ Section.Name }}" value="{{ Section.Name }}"
autocomplete="off" autocomplete="off"
autofocus autofocus
> />
</div> </div>
</div> </div>
@ -63,7 +64,7 @@
required required
value="{{ Section.ShortName }}" value="{{ Section.ShortName }}"
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
@ -81,9 +82,7 @@
disabled disabled
{% endif %} {% endif %}
> >
<option value="0"> <option value="0">Choisir...</option>
Choisir...
</option>
{% if !IsParent %} {% if !IsParent %}
{% for ParentSection in Sections %} {% for ParentSection in Sections %}
<option <option
@ -109,7 +108,7 @@
{% if Section.ContainsMembers %} {% if Section.ContainsMembers %}
checked checked
{% endif %} {% endif %}
> />
<label for="contains_members" class="form-label"> <label for="contains_members" class="form-label">
Contient des membres Contient des membres
</label> </label>
@ -127,7 +126,7 @@
{% if Section.ContainsContacts %} {% if Section.ContainsContacts %}
checked checked
{% endif %} {% endif %}
> />
<label for="contains_contacts" class="form-label"> <label for="contains_contacts" class="form-label">
Contient des contacts Contient des contacts
</label> </label>
@ -141,6 +140,5 @@
</button> </button>
</div> </div>
</form> </form>
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container my-4"> <div class="container my-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -10,7 +10,7 @@
<li class="breadcrumb-item active">Sections</li> <li class="breadcrumb-item active">Sections</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="my-3 text-end"> <div class="my-3 text-end">
@ -71,10 +71,7 @@
</table> </table>
</div> </div>
{% else %} {% else %}
<div class="my-4"> <div class="my-4">Pas de section pour le moment</div>
Pas de section pour le moment
</div>
{% endif %} {% endif %}
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,31 +1,30 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container"> <div class="container">
<div id="login-card" class="my-5"> <div id="login-card" class="my-5">
<div class="card"> <div class="card">
<div class="card-header"> <div class="card-header">Enregistrement multifacteur (TOTP)</div>
Enregistrement multifacteur (TOTP)
</div>
<div class="card-body"> <div class="card-body">
{% if MfaError %} {% if MfaError %}
<div class="alert alert-danger"> <div class="alert alert-danger">{{ MfaError }}</div>
{{ MfaError }}
</div>
{% endif %} {% endif %}
<div class="lh-sm text-center"> <div class="lh-sm text-center">
Le double facteur protège lapplication et Le double facteur protège lapplication et sécurise les données
sécurise les données personnelles de nos camarades. personnelles de nos camarades. Même en cas de vol de mot de passe,
Même en cas de vol de mot de passe, laccès est bloqué sans une laccès est bloqué sans une vérification supplémentaire.
vérification supplémentaire.
</div> </div>
<div class="my-4 text-center"> <div class="my-4 text-center">
<img src="{{ QrCode }}" alt="Code QR"> <img src="{{ QrCode }}" alt="Code QR" />
<div class="mt-2"> <div class="mt-2">
<a href="javascript:;" data-bs-toggle="modal" data-bs-target="#modal-help"> <a
href="javascript:;"
data-bs-toggle="modal"
data-bs-target="#modal-help"
>
<i class="bi-info-square"></i> <i class="bi-info-square"></i>
Comment utiliser ce code QR ? Comment utiliser ce code QR ?
</a> </a>
@ -44,12 +43,10 @@
name="secret" name="secret"
disabled disabled
value="{{ Secret }}" value="{{ Secret }}"
> />
</div> </div>
<div class="mb-3"> <div class="mb-3">
<label for="otp" class="form-label"> <label for="otp" class="form-label"> Code temporaire </label>
Code temporaire
</label>
<input <input
id="otp" id="otp"
class="form-control" class="form-control"
@ -59,7 +56,7 @@
placeholder="000000" placeholder="000000"
pattern="[0-9]{6}" pattern="[0-9]{6}"
autofocus autofocus
> />
</div> </div>
<div class="text-end"> <div class="text-end">
<button class="btn btn-outline-primary" type="submit"> <button class="btn btn-outline-primary" type="submit">
@ -71,26 +68,32 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div id="modal-help" class="modal" tabindex="-1"> <div id="modal-help" class="modal" tabindex="-1">
<div class="modal-dialog modal-dialog-centered"> <div class="modal-dialog modal-dialog-centered">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
<h5 class="modal-title">Aide</h5> <h5 class="modal-title">Aide</h5>
<button type="button" class="btn-close" data-bs-dismiss="modal"></button> <button
type="button"
class="btn-close"
data-bs-dismiss="modal"
></button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<ol> <ol>
<li> <li>
<b>Téléchargez une application dauthentification :</b> <b>Téléchargez une application dauthentification :</b>
Installez une application compatible TOTP (comme Google Authenticator, Installez une application compatible TOTP (comme Google
Microsoft Authenticator ou Authy) sur votre smartphone. Authenticator, Microsoft Authenticator ou Authy) sur votre
smartphone.
</li> </li>
<li> <li>
<b>Scannez le code QR :</b> <b>Scannez le code QR :</b>
Ouvrez l'application, choisissez "Ajouter un compte" ou "Scanner un code QR", Ouvrez l'application, choisissez "Ajouter un compte" ou "Scanner
puis utilisez votre appareil pour scanner le QR code affiché. un code QR", puis utilisez votre appareil pour scanner le QR code
affiché.
</li> </li>
<li> <li>
<b>Enregistrez le compte :</b> <b>Enregistrez le compte :</b>
@ -99,11 +102,12 @@
</li> </li>
<li> <li>
<b>Testez le code :</b> <b>Testez le code :</b>
Entrez le code généré dans l'application pour confirmer lenrôlement. Entrez le code généré dans l'application pour confirmer
lenrôlement.
</li> </li>
</ol> </ol>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

View file

@ -1,24 +1,18 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container"> <div class="container">
<div id="login-card" class="my-5"> <div id="login-card" class="my-5">
<div class="card"> <div class="card">
<div class="card-header"> <div class="card-header">Vérification multifacteur (TOTP)</div>
Vérification multifacteur (TOTP)
</div>
<div class="card-body"> <div class="card-body">
{% if MfaError %} {% if MfaError %}
<div class="alert alert-danger"> <div class="alert alert-danger">{{ MfaError }}</div>
{{ MfaError }}
</div>
{% endif %} {% endif %}
<form id="login" method="post"> <form id="login" method="post">
<div class="mb-3"> <div class="mb-3">
<label for="otp" class="form-label"> <label for="otp" class="form-label"> Code temporaire </label>
Code temporaire
</label>
<input <input
id="otp" id="otp"
class="form-control" class="form-control"
@ -28,7 +22,7 @@
placeholder="000000" placeholder="000000"
pattern="[0-9]{6}" pattern="[0-9]{6}"
autofocus autofocus
> />
</div> </div>
<div class="text-end"> <div class="text-end">
<button class="btn btn-outline-primary" type="submit"> <button class="btn btn-outline-primary" type="submit">
@ -40,5 +34,5 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

View file

@ -1,23 +1,23 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
<li class="breadcrumb-item"><a href="/">Accueil</a></li> <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">Administration</a></li>
<li class="breadcrumb-item"><a href="/admin/users">Utilisateurs</a></li> <li class="breadcrumb-item">
<a href="/admin/users">Utilisateurs</a>
</li>
<li class="breadcrumb-item active">{{ User.Name }}</li> <li class="breadcrumb-item active">{{ User.Name }}</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Nom complet</div>
Nom complet
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -25,14 +25,12 @@
value="{{ User.Name }}" value="{{ User.Name }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Email</div>
Email
</div>
<div class="col-md-10"> <div class="col-md-10">
<input <input
type="text" type="text"
@ -40,92 +38,61 @@
value="{{ User.Email }}" value="{{ User.Email }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Administrateur</div>
Administrateur
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if User.IsAdmin %} {% if User.IsAdmin %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Ecran de bienvenue à la prochaine connexion</div>
Ecran de bienvenue à la prochaine connexion
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if User.SkipWelcome %} {% if User.SkipWelcome %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Non" disabled />
type="text"
class="form-control"
value="Non"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-x-lg text-danger"></i> <i class="bi-x-lg text-danger"></i>
</span> </span>
<input <input type="text" class="form-control" value="Oui" disabled />
type="text"
class="form-control"
value="Oui"
disabled
>
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">Double facteur (TOTP)</div>
Double facteur (TOTP)
</div>
<div class="col-md-10"> <div class="col-md-10">
{% if User.TotpSecret.Valid %} {% if User.TotpSecret.Valid %}
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
<i class="bi-check-lg text-success"></i> <i class="bi-check-lg text-success"></i>
</span> </span>
<input <input type="text" class="form-control" value="Enrôlé" disabled />
type="text"
class="form-control"
value="Enrôlé"
disabled
>
</div> </div>
{% else %} {% else %}
<div class="input-group"> <div class="input-group">
@ -137,23 +104,19 @@
class="form-control" class="form-control"
value="Enrôlement lors de la prochaine connexion" value="Enrôlement lors de la prochaine connexion"
disabled disabled
> />
</div> </div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
<div class="mt-4 mb-3"> <div class="mt-4 mb-3">
<span class="h4"> <span class="h4"> Permissions </span>
Permissions
</span>
</div> </div>
{% if UserRoles %} {% if UserRoles %}
{% for UserRole in UserRoles %} {% for UserRole in UserRoles %}
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">{{ UserRole.Section.Name }}</div>
{{ UserRole.Section.Name }}
</div>
<div class="col-md-10"> <div class="col-md-10">
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
@ -165,51 +128,67 @@
value="{{ UserRole.Role.Name }}" value="{{ UserRole.Role.Name }}"
disabled disabled
readonly readonly
> />
</div> </div>
</div> </div>
</div> </div>
{% endfor %} {% endfor %}
{% else %} {% else %}
<div> <div>Pas encore de permissions pour cet utilisateur.</div>
Pas encore de permissions pour cet utilisateur.
</div>
{% endif %} {% endif %}
<div class="my-4 row"> <div class="my-4 row">
<div class="col-6"> <div class="col-6">
<a class="btn btn-outline-primary" href="/admin/users/{{ User.ID }}/edit"> <a
class="btn btn-outline-primary"
href="/admin/users/{{ User.ID }}/edit"
>
<i class="bi-pencil-square me-1"></i> <i class="bi-pencil-square me-1"></i>
Modifier Modifier
</a> </a>
<a class="btn btn-outline-primary" href="/admin/users/{{ User.ID }}/permissions"> <a
class="btn btn-outline-primary"
href="/admin/users/{{ User.ID }}/permissions"
>
<i class="bi-key me-1"></i> <i class="bi-key me-1"></i>
Permissions Permissions
</a> </a>
</div> </div>
<div class="col-6 text-end"> <div class="col-6 text-end">
<button type="button" class="btn btn-outline-danger" data-bs-toggle="modal" data-bs-target="#modal-delete"> <button
type="button"
class="btn btn-outline-danger"
data-bs-toggle="modal"
data-bs-target="#modal-delete"
>
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
</button> </button>
</div> </div>
</div> </div>
</div>
</div> <div id="modal-delete" class="modal" tabindex="-1">
<div id="modal-delete" class="modal" tabindex="-1">
<div class="modal-dialog modal-dialog-centered"> <div class="modal-dialog modal-dialog-centered">
<div class="modal-content"> <div class="modal-content">
<div class="modal-body"> <div class="modal-body">
<p>Êtes-vous sûr de vouloir supprimer cet utilisateur ?</p> <p>Êtes-vous sûr de vouloir supprimer cet utilisateur ?</p>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-outline-secondary" data-bs-dismiss="modal"> <button
type="button"
class="btn btn-outline-secondary"
data-bs-dismiss="modal"
>
<i class="bi-x-lg me-1"></i> <i class="bi-x-lg me-1"></i>
Annuler Annuler
</button> </button>
<form action="/admin/users/{{ User.ID }}/delete" method="post" class="d-inline p-0"> <form
action="/admin/users/{{ User.ID }}/delete"
method="post"
class="d-inline p-0"
>
<button class="btn btn-outline-danger" type="submit"> <button class="btn btn-outline-danger" type="submit">
<i class="bi-trash3 me-1"></i> <i class="bi-trash3 me-1"></i>
Supprimer Supprimer
@ -218,5 +197,5 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}

View file

@ -1,23 +1,27 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
<li class="breadcrumb-item"><a href="/">Accueil</a></li> <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">Administration</a></li>
<li class="breadcrumb-item"><a href="/admin/users">Utilisateurs</a></li> <li class="breadcrumb-item">
<a href="/admin/users">Utilisateurs</a>
</li>
{% if User.ID %} {% if User.ID %}
<li class="breadcrumb-item"><a href="/admin/users/{{ User.ID }}">{{ User.Name }}</a></li> <li class="breadcrumb-item">
<a href="/admin/users/{{ User.ID }}">{{ User.Name }}</a>
</li>
<li class="breadcrumb-item active">Modifier</li> <li class="breadcrumb-item active">Modifier</li>
{% else %} {% else %}
<li class="breadcrumb-item active">Ajouter</li> <li class="breadcrumb-item active">Ajouter</li>
{% endif %} {% endif %}
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
{% if Errors %} {% if Errors %}
@ -31,11 +35,8 @@
{% endif %} {% endif %}
<form id="user" method="post"> <form id="user" method="post">
<div class="row mb-3"> <div class="row mb-3">
<label for="name" class="form-label col-md-2"> <label for="name" class="form-label col-md-2"> Nom complet </label>
Nom complet
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="name" id="name"
@ -46,14 +47,12 @@
value="{{ User.Name }}" value="{{ User.Name }}"
autocomplete="off" autocomplete="off"
autofocus autofocus
> />
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<label for="email" class="form-label col-md-2"> <label for="email" class="form-label col-md-2"> Email </label>
Email
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="email" id="email"
@ -63,7 +62,7 @@
required required
value="{{ User.Email }}" value="{{ User.Email }}"
autocomplete="off" autocomplete="off"
> />
</div> </div>
</div> </div>
@ -78,17 +77,13 @@
{% if User.IsAdmin %} {% if User.IsAdmin %}
checked checked
{% endif %} {% endif %}
> />
<label for="is_admin" class="form-label"> <label for="is_admin" class="form-label"> Administrateur </label>
Administrateur
</label>
</div> </div>
</div> </div>
<div class="row mb-3"> <div class="row mb-3">
<label for="password" class="form-label col-md-2"> <label for="password" class="form-label col-md-2"> Mot de passe </label>
Mot de passe
</label>
<div class="col-md-10"> <div class="col-md-10">
<input <input
id="password" id="password"
@ -97,11 +92,9 @@
name="password" name="password"
autocomplete="off" autocomplete="off"
{% if !User.ID %}required{% endif %} {% if !User.ID %}required{% endif %}
> />
{% if User.ID %} {% if User.ID %}
<div class="form-text"> <div class="form-text">Laisser vide pour ne pas changer</div>
Laisser vide pour ne pas changer
</div>
{% endif %} {% endif %}
</div> </div>
</div> </div>
@ -115,13 +108,13 @@
id="reset_totp" id="reset_totp"
name="reset_totp" name="reset_totp"
autocomplete="off" autocomplete="off"
> />
<label for="reset_totp" class="form-label"> <label for="reset_totp" class="form-label">
Réinitialiser le double facteur (TOTP) Réinitialiser le double facteur (TOTP)
</label> </label>
<div class="form-text"> <div class="form-text">
Si la case est cochée, l'utilisateur devra effectuer Si la case est cochée, l'utilisateur devra effectuer un enrôlement
un enrôlement TOTP à la prochaine connexion. TOTP à la prochaine connexion.
</div> </div>
</div> </div>
</div> </div>
@ -134,6 +127,5 @@
</button> </button>
</div> </div>
</form> </form>
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,18 +1,22 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container mt-4"> <div class="container mt-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
<li class="breadcrumb-item"><a href="/">Accueil</a></li> <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">Administration</a></li>
<li class="breadcrumb-item"><a href="/admin/users">Utilisateurs</a></li> <li class="breadcrumb-item">
<li class="breadcrumb-item"><a href="/admin/users/{{ User.ID }}">{{ User.Name }}</a></li> <a href="/admin/users">Utilisateurs</a>
</li>
<li class="breadcrumb-item">
<a href="/admin/users/{{ User.ID }}">{{ User.Name }}</a>
</li>
<li class="breadcrumb-item active">Permissions</li> <li class="breadcrumb-item active">Permissions</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
{% if Errors %} {% if Errors %}
@ -27,12 +31,9 @@
{% if Sections %} {% if Sections %}
<form id="user" method="post"> <form id="user" method="post">
{% for Section in Sections %} {% for Section in Sections %}
<div class="row mb-3"> <div class="row mb-3">
<div class="col-md-2"> <div class="col-md-2">{{ Section.Name }}</div>
{{ Section.Name }}
</div>
<div class="col-md-10"> <div class="col-md-10">
<div class="input-group"> <div class="input-group">
<span class="input-group-text"> <span class="input-group-text">
@ -48,7 +49,6 @@
{% for Role in Roles %} {% for Role in Roles %}
<option <option
value="{{ Role.ID }}" value="{{ Role.ID }}"
{% for UserRole in UserRoles %} {% for UserRole in UserRoles %}
{% if Section.ID == UserRole.SectionID and Role.ID == UserRole.RoleID %} {% if Section.ID == UserRole.SectionID and Role.ID == UserRole.RoleID %}
selected selected
@ -72,10 +72,7 @@
</div> </div>
</form> </form>
{% else %} {% else %}
<div class="my-4"> <div class="my-4">Pas de section pour le moment</div>
Pas de section pour le moment
</div>
{% endif %} {% endif %}
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,7 +1,7 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container my-4"> <div class="container my-4">
<div class="mb-4"> <div class="mb-4">
<nav> <nav>
<ol class="breadcrumb"> <ol class="breadcrumb">
@ -10,7 +10,7 @@
<li class="breadcrumb-item active">Utilisateurs</li> <li class="breadcrumb-item active">Utilisateurs</li>
</ol> </ol>
</nav> </nav>
<hr> <hr />
</div> </div>
<div class="my-3 text-end"> <div class="my-3 text-end">
@ -35,13 +35,9 @@
<tr> <tr>
<td> <td>
<span class="user-photo me-2">{{ User.Name|first }}</span> <span class="user-photo me-2">{{ User.Name|first }}</span>
<a href="/admin/users/{{ User.ID }}"> <a href="/admin/users/{{ User.ID }}"> {{ User.Name }} </a>
{{ User.Name }}
</a>
</td>
<td>
{{ User.Email }}
</td> </td>
<td>{{ User.Email }}</td>
<td> <td>
{% if User.IsAdmin %} {% if User.IsAdmin %}
<i class="bi-check-lg text-success me-1"></i> <i class="bi-check-lg text-success me-1"></i>
@ -57,10 +53,7 @@
</table> </table>
</div> </div>
{% else %} {% else %}
<div class="my-4"> <div class="my-4">Pas d'utilisateurs pour le moment</div>
Pas d'utilisateurs pour le moment
</div>
{% endif %} {% endif %}
</div>
</div>
{% endblock %} {% endblock %}

View file

@ -1,12 +1,10 @@
{% extends "layouts/main.html" %} {% extends "layouts/main.html" %}
{% block main %} {% block main %}
<div class="container"> <div class="container">
<div id="login-card" class="my-5"> <div id="login-card" class="my-5">
<div class="card"> <div class="card">
<div class="card-header"> <div class="card-header">Paramètres du compte</div>
Paramètres du compte
</div>
<div class="card-body"> <div class="card-body">
{% if FormErrors %} {% if FormErrors %}
<div class="alert alert-danger"> <div class="alert alert-danger">
@ -20,9 +18,7 @@
<form id="login" method="post"> <form id="login" method="post">
<div class="mb-3"> <div class="mb-3">
<label for="email" class="form-label"> <label for="email" class="form-label"> Adresse email </label>
Adresse email
</label>
{% if EmailUpdate %} {% if EmailUpdate %}
<input <input
id="email" id="email"
@ -32,7 +28,7 @@
required required
value="{{ Email }}" value="{{ Email }}"
autofocus autofocus
> />
{% else %} {% else %}
<input <input
id="email" id="email"
@ -41,13 +37,11 @@
name="email" name="email"
disabled disabled
value="{{ Email }}" value="{{ Email }}"
> />
{% endif %} {% endif %}
</div> </div>
<div class="mb-3"> <div class="mb-3">
<label for="name" class="form-label"> <label for="name" class="form-label"> Nom complet </label>
Nom complet
</label>
<input <input
id="name" id="name"
class="form-control" class="form-control"
@ -55,11 +49,10 @@
name="name" name="name"
required required
value="{{ Name }}" value="{{ Name }}"
{% if !EmailUpdate %} {% if !EmailUpdate %}
autofocus autofocus
{% endif %} {% endif %}
> />
</div> </div>
<div class="mb-3"> <div class="mb-3">
<label for="password" class="form-label"> <label for="password" class="form-label">
@ -71,7 +64,7 @@
type="password" type="password"
name="password" name="password"
required required
> />
</div> </div>
<div class="mb-3"> <div class="mb-3">
<label for="password-verify" class="form-label"> <label for="password-verify" class="form-label">
@ -83,7 +76,7 @@
type="password" type="password"
name="password-verify" name="password-verify"
required required
> />
</div> </div>
<div class="text-end"> <div class="text-end">
<button class="btn btn-outline-primary" type="submit"> <button class="btn btn-outline-primary" type="submit">
@ -95,5 +88,5 @@
</div> </div>
</div> </div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}