Autoformat HTML templates
This commit is contained in:
parent
61ef08f6ec
commit
432ed6943f
16 changed files with 1779 additions and 1587 deletions
|
|
@ -13,18 +13,20 @@
|
|||
</div>
|
||||
|
||||
<form id="account" method="post" style="max-width: 1200px;">
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="name" class="col-md-2 col-xl-3 form-label"> Nom complet </label>
|
||||
<label for="name" class="col-md-2 col-xl-3 form-label">
|
||||
Nom complet
|
||||
</label>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
<input
|
||||
id="name"
|
||||
|
|
@ -55,7 +57,9 @@
|
|||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="password" class="col-md-2 col-xl-3 form-label"> Mot de passe </label>
|
||||
<label for="password" class="col-md-2 col-xl-3 form-label">
|
||||
Mot de passe
|
||||
</label>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
<input
|
||||
id="password"
|
||||
|
|
|
|||
252
views/field.html
252
views/field.html
|
|
@ -16,137 +16,137 @@
|
|||
<hr />
|
||||
</div>
|
||||
|
||||
<div class="mw-1200">
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2">Nom du champ</div>
|
||||
<div class="col-md-10">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Field.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mw-1200">
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2">Nom du champ</div>
|
||||
<div class="col-md-10">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Field.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2">Population</div>
|
||||
<div class="col-md-10">
|
||||
{% for Key, Value in PersonTypes %}
|
||||
{% if Key == Field.PersonType %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Value }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2">Population</div>
|
||||
<div class="col-md-10">
|
||||
{% for Key, Value in PersonTypes %}
|
||||
{% if Key == Field.PersonType %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Value }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2">Type de champ</div>
|
||||
<div class="col-md-10">
|
||||
{% for Key, Value in FieldTypes %}
|
||||
{% if Key == Field.FieldType %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Value }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2">Type de champ</div>
|
||||
<div class="col-md-10">
|
||||
{% for Key, Value in FieldTypes %}
|
||||
{% if Key == Field.FieldType %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Value }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2">Liste</div>
|
||||
<div class="col-md-10">
|
||||
{% if Field.ListID %}
|
||||
<div class="input-group">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Field.List.Name }}"
|
||||
readonly
|
||||
disabled
|
||||
/>
|
||||
<span class="input-group-text">
|
||||
<a href="/admin/lists/{{ Field.List.ID }}">
|
||||
Afficher
|
||||
<i class="bi-box-arrow align-items-center-up-right ms-1"></i>
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2">Liste</div>
|
||||
<div class="col-md-10">
|
||||
{% if Field.ListID %}
|
||||
<div class="input-group">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Field.List.Name }}"
|
||||
readonly
|
||||
disabled
|
||||
/>
|
||||
<span class="input-group-text">
|
||||
<a href="/admin/lists/{{ Field.List.ID }}">
|
||||
Afficher
|
||||
<i class="bi-box-arrow align-items-center-up-right ms-1"></i>
|
||||
</a>
|
||||
</span>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center my-4">
|
||||
<div class="col-6">
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/fields/{{ Field.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square"></i>
|
||||
Modifier
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-danger"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center my-4">
|
||||
<div class="col-6">
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/fields/{{ Field.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square"></i>
|
||||
Modifier
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-danger"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="modal-delete" class="modal" tabindex="-1">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
<div class="modal-content">
|
||||
<div class="modal-body">
|
||||
<p>Êtes-vous sûr de vouloir supprimer ce champ ?</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-secondary"
|
||||
data-bs-dismiss="modal"
|
||||
>
|
||||
<i class="bi-x-lg me-1"></i>
|
||||
Annuler
|
||||
</button>
|
||||
<div id="modal-delete" class="modal" tabindex="-1">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
<div class="modal-content">
|
||||
<div class="modal-body">
|
||||
<p>Êtes-vous sûr de vouloir supprimer ce champ ?</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-secondary"
|
||||
data-bs-dismiss="modal"
|
||||
>
|
||||
<i class="bi-x-lg me-1"></i>
|
||||
Annuler
|
||||
</button>
|
||||
|
||||
<form
|
||||
action="/admin/fields/{{ Field.ID }}/delete"
|
||||
method="post"
|
||||
class="d-inline p-0"
|
||||
>
|
||||
<button class="btn btn-outline-danger" type="submit">
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<form
|
||||
action="/admin/fields/{{ Field.ID }}/delete"
|
||||
method="post"
|
||||
class="d-inline p-0"
|
||||
>
|
||||
<button class="btn btn-outline-danger" type="submit">
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
|
|
|||
|
|
@ -25,15 +25,15 @@
|
|||
</div>
|
||||
|
||||
<form id="field" method="post" class="mw-1200">
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<label for="name" class="form-label col-md-2"> Nom du champ </label>
|
||||
|
|
|
|||
171
views/list.html
171
views/list.html
|
|
@ -14,97 +14,96 @@
|
|||
<hr />
|
||||
</div>
|
||||
|
||||
<div class="mw-1200">
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Nom</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ List.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mw-1200">
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Nom</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ List.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Liste à choix multiples</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
{% if List.Multi %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Liste à choix multiples</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
{% if List.Multi %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="p-3 my-4 bg-body-tertiary border">
|
||||
<div class="mb-3">
|
||||
<span class="h5">Liste</span>
|
||||
</div>
|
||||
<div class="p-3 my-4 bg-body-tertiary border">
|
||||
<div class="mb-3">
|
||||
<span class="h5">Liste</span>
|
||||
</div>
|
||||
|
||||
{% if ListItems %}
|
||||
<ul class="p-0" style="list-style: none;">
|
||||
{% for Item in ListItems %}
|
||||
<li>
|
||||
<a href="/admin/lists/{{ List.ID }}/items/{{ Item.ID }}">
|
||||
{{ Item.Value }}
|
||||
</a>
|
||||
{% if Item.Default %}
|
||||
<span class="badge text-bg-success">Par défaut</span>
|
||||
{% endif %}
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% else %}
|
||||
<div>Pas encore d'éléments dans cette liste</div>
|
||||
{% endif %}
|
||||
{% if ListItems %}
|
||||
<ul class="p-0" style="list-style: none;">
|
||||
{% for Item in ListItems %}
|
||||
<li>
|
||||
<a href="/admin/lists/{{ List.ID }}/items/{{ Item.ID }}">
|
||||
{{ Item.Value }}
|
||||
</a>
|
||||
{% if Item.Default %}
|
||||
<span class="badge text-bg-success">Par défaut</span>
|
||||
{% endif %}
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
{% else %}
|
||||
<div>Pas encore d'éléments dans cette liste</div>
|
||||
{% endif %}
|
||||
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/lists/{{ List.ID }}/items/add"
|
||||
>
|
||||
<i class="bi-plus-lg"></i>
|
||||
Ajouter
|
||||
</a>
|
||||
</div>
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/lists/{{ List.ID }}/items/add"
|
||||
>
|
||||
<i class="bi-plus-lg"></i>
|
||||
Ajouter
|
||||
</a>
|
||||
</div>
|
||||
|
||||
<div class="my-4 row align-items-center">
|
||||
<div class="col-6">
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/lists/{{ List.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square"></i>
|
||||
Modifier
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-danger"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<div class="my-4 row align-items-center">
|
||||
<div class="col-6">
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/lists/{{ List.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square"></i>
|
||||
Modifier
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-danger"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="modal-delete" class="modal" tabindex="-1">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
|
|
|
|||
|
|
@ -23,18 +23,20 @@
|
|||
</div>
|
||||
|
||||
<form id="list" method="post" class="mw-1200">
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<label for="name" class="form-label mb-0 col-md-2 col-xl-3"> Nom </label>
|
||||
<label for="name" class="form-label mb-0 col-md-2 col-xl-3">
|
||||
Nom
|
||||
</label>
|
||||
<div class="col">
|
||||
<input
|
||||
id="name"
|
||||
|
|
|
|||
|
|
@ -23,15 +23,15 @@
|
|||
</div>
|
||||
|
||||
<form id="listitem" method="post" class="mw-900">
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<label for="value" class="form-label mb-0 col-md-2"> Valeur </label>
|
||||
|
|
@ -68,59 +68,59 @@
|
|||
</div>
|
||||
|
||||
<div class="my-4 row align-items-center">
|
||||
<div class="col-6">
|
||||
<button class="btn btn-outline-primary" type="submit">
|
||||
<i class="me-1 bi-floppy"></i>
|
||||
Enregistrer
|
||||
</button>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
{% if ListItem.ID %}
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-danger"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="col-6">
|
||||
<button class="btn btn-outline-primary" type="submit">
|
||||
<i class="me-1 bi-floppy"></i>
|
||||
Enregistrer
|
||||
</button>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
{% if ListItem.ID %}
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-danger"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
{% if ListItem.ID %}
|
||||
<div id="modal-delete" class="modal" tabindex="-1">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
<div class="modal-content">
|
||||
<div class="modal-body">
|
||||
<p>Êtes-vous sûr de vouloir supprimer cette valeur ?</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-secondary"
|
||||
data-bs-dismiss="modal"
|
||||
>
|
||||
<i class="bi-x-lg me-1"></i>
|
||||
Annuler
|
||||
</button>
|
||||
|
||||
<form
|
||||
action="/admin/lists/{{ List.ID }}/items/{{ ListItem.ID }}/delete"
|
||||
method="post"
|
||||
class="d-inline p-0"
|
||||
>
|
||||
<button class="btn btn-outline-danger" type="submit">
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if ListItem.ID %}
|
||||
<div id="modal-delete" class="modal" tabindex="-1">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
<div class="modal-content">
|
||||
<div class="modal-body">
|
||||
<p>Êtes-vous sûr de vouloir supprimer cette valeur ?</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-secondary"
|
||||
data-bs-dismiss="modal"
|
||||
>
|
||||
<i class="bi-x-lg me-1"></i>
|
||||
Annuler
|
||||
</button>
|
||||
|
||||
<form
|
||||
action="/admin/lists/{{ List.ID }}/items/{{ ListItem.ID }}/delete"
|
||||
method="post"
|
||||
class="d-inline p-0"
|
||||
>
|
||||
<button class="btn btn-outline-danger" type="submit">
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endblock %}
|
||||
|
|
|
|||
|
|
@ -244,195 +244,201 @@
|
|||
</div>
|
||||
|
||||
<div>
|
||||
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
||||
<div class="row">
|
||||
<div class="col-xxl col-lg-4 col-md-6 order-1 order-md-1 order-lg-1 order-xxl-1">
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
{% if OrderCol == "name" || OrderCol == "" %}
|
||||
{% if OrderDir == "asc" || OrderDir == "" %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=name&o=desc">
|
||||
Nom <i class="bi-arrow-down"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=name&o=asc">
|
||||
Nom <i class="bi-arrow-up"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=name&o=asc">
|
||||
Nom
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xxl col-lg-4 col-md-6 order-2 order-md-3 order-lg-2 order-xxl-2">
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
{% if OrderCol == "address" %}
|
||||
{% if OrderDir == "asc" || OrderDir == "" %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=address&o=desc">
|
||||
Adresse <i class="bi-arrow-down"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=address&o=asc">
|
||||
Adresse <i class="bi-arrow-up"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=address&o=asc">
|
||||
Adresse
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xxl col-lg-4 col-md-6 order-3 order-md-5 order-lg-5 order-xxl-3">
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
{% if OrderCol == "npa" %}
|
||||
{% if OrderDir == "asc" || OrderDir == "" %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=npa&o=desc">
|
||||
Lieu <i class="bi-arrow-down"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=npa&o=asc">
|
||||
Lieu <i class="bi-arrow-up"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=npa&o=asc">
|
||||
Lieu
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xxl col-lg-4 col-md-6 order-4 order-md-2 order-lg-4 order-xxl-4">
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
{% if OrderCol == "section" %}
|
||||
{% if OrderDir == "asc" || OrderDir == "" %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=section&o=desc">
|
||||
Section <i class="bi-arrow-down"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=section&o=asc">
|
||||
Section <i class="bi-arrow-up"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=section&o=asc">
|
||||
Section
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xxl col-lg-4 col-md-6 order-5 order-md-3 order-lg-4 order-xxl-5">
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
{% if OrderCol == "created" %}
|
||||
{% if OrderDir == "asc" || OrderDir == "" %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=created&o=desc">
|
||||
Création <i class="bi-arrow-down"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=created&o=asc">
|
||||
Création <i class="bi-arrow-up"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=created&o=asc">
|
||||
Création
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xxl col-lg-4 col-md-6 order-last order-md-last order-lg-last order-xxl-last">
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
{% if OrderCol == "updated" %}
|
||||
{% if OrderDir == "asc" || OrderDir == "" %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=updated&o=desc">
|
||||
Modification <i class="bi-arrow-down"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=updated&o=asc">
|
||||
Modification <i class="bi-arrow-up"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=updated&o=asc">
|
||||
Modification
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
||||
<div class="row">
|
||||
<div
|
||||
class="col-xxl col-lg-4 col-md-6 order-1 order-md-1 order-lg-1 order-xxl-1"
|
||||
>
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
{% if OrderCol == "name" || OrderCol == "" %}
|
||||
{% if OrderDir == "asc" || OrderDir == "" %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=name&o=desc">
|
||||
Nom <i class="bi-arrow-down"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=name&o=asc">
|
||||
Nom <i class="bi-arrow-up"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=name&o=asc">
|
||||
Nom
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="col-xxl col-lg-4 col-md-6 order-2 order-md-3 order-lg-2 order-xxl-2"
|
||||
>
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
{% if OrderCol == "address" %}
|
||||
{% if OrderDir == "asc" || OrderDir == "" %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=address&o=desc">
|
||||
Adresse <i class="bi-arrow-down"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=address&o=asc">
|
||||
Adresse <i class="bi-arrow-up"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=address&o=asc">
|
||||
Adresse
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="col-xxl col-lg-4 col-md-6 order-3 order-md-5 order-lg-5 order-xxl-3"
|
||||
>
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
{% if OrderCol == "npa" %}
|
||||
{% if OrderDir == "asc" || OrderDir == "" %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=npa&o=desc">
|
||||
Lieu <i class="bi-arrow-down"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=npa&o=asc">
|
||||
Lieu <i class="bi-arrow-up"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=npa&o=asc">
|
||||
Lieu
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="col-xxl col-lg-4 col-md-6 order-4 order-md-2 order-lg-4 order-xxl-4"
|
||||
>
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
{% if OrderCol == "section" %}
|
||||
{% if OrderDir == "asc" || OrderDir == "" %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=section&o=desc">
|
||||
Section <i class="bi-arrow-down"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=section&o=asc">
|
||||
Section <i class="bi-arrow-up"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=section&o=asc">
|
||||
Section
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="col-xxl col-lg-4 col-md-6 order-5 order-md-3 order-lg-4 order-xxl-5"
|
||||
>
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
{% if OrderCol == "created" %}
|
||||
{% if OrderDir == "asc" || OrderDir == "" %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=created&o=desc">
|
||||
Création <i class="bi-arrow-down"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=created&o=asc">
|
||||
Création <i class="bi-arrow-up"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=created&o=asc">
|
||||
Création
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="col-xxl col-lg-4 col-md-6 order-last order-md-last order-lg-last order-xxl-last"
|
||||
>
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
{% if OrderCol == "updated" %}
|
||||
{% if OrderDir == "asc" || OrderDir == "" %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=updated&o=desc">
|
||||
Modification <i class="bi-arrow-down"></i>
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=updated&o=asc">
|
||||
Modification <i class="bi-arrow-up"></i>
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<a href="?p=1&s={{ SearchJSON|urlencode }}&c=updated&o=asc">
|
||||
Modification
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% for Person in People %}
|
||||
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
||||
<div class="row">
|
||||
<div class="col-xxl col-lg-4 col-md-6 order-1 order-md-1 order-lg-1 order-xxl-1">
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
Nom
|
||||
</div>
|
||||
<div>
|
||||
{% if Person.IsMember %}
|
||||
<a href="/members/{{ Person.ID }}">
|
||||
{{ Person.LastName }} {{ Person.FirstName }}
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="/contacts/{{ Person.ID }}">
|
||||
{{ Person.LastName }} {{ Person.FirstName }}
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xxl col-lg-4 col-md-6 order-2 order-md-3 order-lg-2 order-xxl-2">
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
Adresse
|
||||
</div>
|
||||
<div>
|
||||
{{ Person.Address1 }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xxl col-lg-4 col-md-6 order-3 order-md-5 order-lg-5 order-xxl-3">
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
Lieu
|
||||
</div>
|
||||
<div>
|
||||
{{ Person.PostalCode }} {{ Person.City }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xxl col-lg-4 col-md-6 order-4 order-md-2 order-lg-4 order-xxl-4">
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
Section
|
||||
</div>
|
||||
<div>
|
||||
{{ Person.Section.Name }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xxl col-lg-4 col-md-6 order-5 order-md-3 order-lg-4 order-xxl-5">
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
Création
|
||||
</div>
|
||||
<div>
|
||||
{% if Person.CreatedAt|date:"2006-01-02" == "1970-01-01" %}
|
||||
<code>Inconnu</code>
|
||||
{% else %}
|
||||
<code>{{ Person.CreatedAt|date:"02.01.2006 15:04" }}</code>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-xxl col-lg-4 col-md-6 order-last order-md-last order-lg-last order-xxl-last">
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">
|
||||
Modification
|
||||
</div>
|
||||
<div>
|
||||
{% if Person.UpdatedAt|date:"2006-01-02" == "1970-01-01" %}
|
||||
<code>Inconnu</code>
|
||||
{% else %}
|
||||
<code>{{ Person.UpdatedAt|date:"02.01.2006 15:04" }}</code>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% for Person in People %}
|
||||
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
||||
<div class="row">
|
||||
<div
|
||||
class="col-xxl col-lg-4 col-md-6 order-1 order-md-1 order-lg-1 order-xxl-1"
|
||||
>
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
||||
<div>
|
||||
{% if Person.IsMember %}
|
||||
<a href="/members/{{ Person.ID }}">
|
||||
{{ Person.LastName }} {{ Person.FirstName }}
|
||||
</a>
|
||||
{% else %}
|
||||
<a href="/contacts/{{ Person.ID }}">
|
||||
{{ Person.LastName }} {{ Person.FirstName }}
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="col-xxl col-lg-4 col-md-6 order-2 order-md-3 order-lg-2 order-xxl-2"
|
||||
>
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Adresse</div>
|
||||
<div>{{ Person.Address1 }}</div>
|
||||
</div>
|
||||
<div
|
||||
class="col-xxl col-lg-4 col-md-6 order-3 order-md-5 order-lg-5 order-xxl-3"
|
||||
>
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Lieu</div>
|
||||
<div>{{ Person.PostalCode }} {{ Person.City }}</div>
|
||||
</div>
|
||||
<div
|
||||
class="col-xxl col-lg-4 col-md-6 order-4 order-md-2 order-lg-4 order-xxl-4"
|
||||
>
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Section</div>
|
||||
<div>{{ Person.Section.Name }}</div>
|
||||
</div>
|
||||
<div
|
||||
class="col-xxl col-lg-4 col-md-6 order-5 order-md-3 order-lg-4 order-xxl-5"
|
||||
>
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Création</div>
|
||||
<div>
|
||||
{% if Person.CreatedAt|date:"2006-01-02" == "1970-01-01" %}
|
||||
<code>Inconnu</code>
|
||||
{% else %}
|
||||
<code>{{ Person.CreatedAt|date:"02.01.2006 15:04" }}</code>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="col-xxl col-lg-4 col-md-6 order-last order-md-last order-lg-last order-xxl-last"
|
||||
>
|
||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Modification</div>
|
||||
<div>
|
||||
{% if Person.UpdatedAt|date:"2006-01-02" == "1970-01-01" %}
|
||||
<code>Inconnu</code>
|
||||
{% else %}
|
||||
<code>{{ Person.UpdatedAt|date:"02.01.2006 15:04" }}</code>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
|
||||
<nav class="mt-3 mb-5">
|
||||
|
|
@ -450,7 +456,10 @@
|
|||
</li>
|
||||
{% else %}
|
||||
<li class="page-item">
|
||||
<a class="page-link" href="?p=1&s={{ SearchJSON|urlencode }}&c={{ OrderCol }}&o={{ OrderDir }}">
|
||||
<a
|
||||
class="page-link"
|
||||
href="?p=1&s={{ SearchJSON|urlencode }}&c={{ OrderCol }}&o={{ OrderDir }}"
|
||||
>
|
||||
<i class="bi-rewind"></i>
|
||||
</a>
|
||||
</li>
|
||||
|
|
|
|||
|
|
@ -21,379 +21,380 @@
|
|||
<hr />
|
||||
</div>
|
||||
|
||||
<div class="mw-1200">
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Nom de famille</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.LastName }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mw-1200">
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Nom de famille</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.LastName }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Prénom</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.FirstName }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Prénom</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.FirstName }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Email</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.Email }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Email</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.Email }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Téléphone fixe</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.Phone }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Téléphone fixe</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.Phone }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-5">
|
||||
<div class="col-md-2 col-xl-3">Téléphone mobile</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.Mobile }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-5">
|
||||
<div class="col-md-2 col-xl-3">Téléphone mobile</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.Mobile }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-2">
|
||||
<div class="col-md-2 col-xl-3">Adresse</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.Address1 }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-2">
|
||||
<div class="col-md-2 col-xl-3">Adresse</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.Address1 }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-2">
|
||||
<div class="col offset-md-2 offset-xl-3">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.Address2 }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-2">
|
||||
<div class="col offset-md-2 offset-xl-3">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.Address2 }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-5">
|
||||
<div class="col-md-3 col-lg-2 offset-md-2 offset-xl-3 mb-2 mb-md-0">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.PostalCode }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.City }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-5">
|
||||
<div class="col-md-3 col-lg-2 offset-md-2 offset-xl-3 mb-2 mb-md-0">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.PostalCode }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.City }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Section</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.Section.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Section</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Person.Section.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% if Fields %}
|
||||
<div class="mt-4 mb-3">
|
||||
<span class="h4"> Champs supplémentaires </span>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if Fields %}
|
||||
<div class="mt-4 mb-3">
|
||||
<span class="h4"> Champs supplémentaires </span>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% for Field in Fields %}
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">{{ Field.Name }}</div>
|
||||
<div class="col">
|
||||
{% if Field.FieldType == "text" %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
disabled
|
||||
readonly
|
||||
{% for FieldValue in FieldValues %}
|
||||
{% if FieldValue.FieldID == Field.ID %}
|
||||
value="{{ FieldValue.ValueString.String }}"
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
/>
|
||||
{% endif %}
|
||||
{% for Field in Fields %}
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">{{ Field.Name }}</div>
|
||||
<div class="col">
|
||||
{% if Field.FieldType == "text" %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
disabled
|
||||
readonly
|
||||
{% for FieldValue in FieldValues %}
|
||||
{% if FieldValue.FieldID == Field.ID %}
|
||||
value="{{ FieldValue.ValueString.String }}"
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
/>
|
||||
{% endif %}
|
||||
|
||||
{% if Field.FieldType == "longtext" %}
|
||||
<textarea
|
||||
type="text"
|
||||
class="form-control"
|
||||
disabled
|
||||
readonly
|
||||
row align-items-centers="4"
|
||||
>
|
||||
{% if Field.FieldType == "longtext" %}
|
||||
<textarea
|
||||
type="text"
|
||||
class="form-control"
|
||||
disabled
|
||||
readonly
|
||||
row
|
||||
align-items-centers="4"
|
||||
>
|
||||
{% for FieldValue in FieldValues %}{% if FieldValue.FieldID == Field.ID %}{{ FieldValue.ValueString.String }}{% endif %}{% endfor %}</textarea
|
||||
>
|
||||
{% endif %}
|
||||
>
|
||||
{% endif %}
|
||||
|
||||
{% if Field.FieldType == "number" %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
disabled
|
||||
readonly
|
||||
{% for FieldValue in FieldValues %}
|
||||
{% if FieldValue.FieldID == Field.ID %}
|
||||
value="{{ FieldValue.ValueInt.Int64 }}"
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
/>
|
||||
{% endif %}
|
||||
{% if Field.FieldType == "number" %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
disabled
|
||||
readonly
|
||||
{% for FieldValue in FieldValues %}
|
||||
{% if FieldValue.FieldID == Field.ID %}
|
||||
value="{{ FieldValue.ValueInt.Int64 }}"
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
/>
|
||||
{% endif %}
|
||||
|
||||
{% if Field.FieldType == "date" %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
disabled
|
||||
readonly
|
||||
{% for FieldValue in FieldValues %}
|
||||
{% if FieldValue.FieldID == Field.ID %}
|
||||
value="{{ FieldValue.ValueDate.Time|date:"02.01.2006" }}"
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
/>
|
||||
{% endif %}
|
||||
{% if Field.FieldType == "date" %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
disabled
|
||||
readonly
|
||||
{% for FieldValue in FieldValues %}
|
||||
{% if FieldValue.FieldID == Field.ID %}
|
||||
value="{{ FieldValue.ValueDate.Time|date:"02.01.2006" }}"
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
/>
|
||||
{% endif %}
|
||||
|
||||
{% if Field.FieldType == "list" and Field.List.Multi %}
|
||||
{% if Field.FieldType == "list" and Field.List.Multi %}
|
||||
|
||||
{% set count = 1 %}
|
||||
{% for FieldValue in FieldValues %}
|
||||
{% if FieldValue.FieldID == Field.ID %}
|
||||
{% if FieldValue.FieldID == Field.ID %}
|
||||
<div class="mb-1">
|
||||
<input
|
||||
type="checkbox"
|
||||
class="form-check-input me-2"
|
||||
checked
|
||||
disabled
|
||||
/>
|
||||
<label class="form-label"
|
||||
>{{ FieldValue.ListItem.Value }}</label
|
||||
>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
{% set count = 1 %}
|
||||
{% for FieldValue in FieldValues %}
|
||||
{% if FieldValue.FieldID == Field.ID %}
|
||||
{% if FieldValue.FieldID == Field.ID %}
|
||||
<div class="mb-1">
|
||||
<input
|
||||
type="checkbox"
|
||||
class="form-check-input me-2"
|
||||
checked
|
||||
disabled
|
||||
/>
|
||||
<label class="form-label"
|
||||
>{{ FieldValue.ListItem.Value }}</label
|
||||
>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
{% endif %}
|
||||
|
||||
{% if Field.FieldType == "list" and !Field.List.Multi %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
disabled
|
||||
readonly
|
||||
{% for FieldValue in FieldValues %}
|
||||
{% if FieldValue.FieldID == Field.ID %}
|
||||
value="{{ FieldValue.ListItem.Value }}"
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% if Field.FieldType == "list" and !Field.List.Multi %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
disabled
|
||||
readonly
|
||||
{% for FieldValue in FieldValues %}
|
||||
{% if FieldValue.FieldID == Field.ID %}
|
||||
value="{{ FieldValue.ListItem.Value }}"
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
/>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
<div class="my-5">
|
||||
{% if Person.IsMember %}
|
||||
<div class="row align-items-center">
|
||||
<div class="col-md-6">
|
||||
{% if !Person.DeletedAt.Valid %}
|
||||
<div class="my-5">
|
||||
{% if Person.IsMember %}
|
||||
<div class="row align-items-center">
|
||||
<div class="col-md-6">
|
||||
{% if !Person.DeletedAt.Valid %}
|
||||
|
||||
{% if PermEdit %}
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/members/{{ Person.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square"></i>
|
||||
Modifier
|
||||
</a>
|
||||
{% endif %}
|
||||
{% if PermEdit %}
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/members/{{ Person.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square"></i>
|
||||
Modifier
|
||||
</a>
|
||||
{% endif %}
|
||||
|
||||
{% if PermConvert %}
|
||||
<button
|
||||
class="btn btn-outline-secondary"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-convert"
|
||||
>
|
||||
<i class="bi-arrow align-items-center-repeat"></i>
|
||||
Convertir en contact
|
||||
</button>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="col-md-6 text-md-end mt-2 mt-md-0">
|
||||
{% if Person.DeletedAt.Valid %}
|
||||
{% if PermConvert %}
|
||||
<button
|
||||
class="btn btn-outline-secondary"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-convert"
|
||||
>
|
||||
<i class="bi-arrow align-items-center-repeat"></i>
|
||||
Convertir en contact
|
||||
</button>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="col-md-6 text-md-end mt-2 mt-md-0">
|
||||
{% if Person.DeletedAt.Valid %}
|
||||
|
||||
{% if PermRestore %}
|
||||
<button
|
||||
class="btn btn-outline-secondary"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-restore"
|
||||
>
|
||||
<i class="bi-person-check"></i>
|
||||
Restaurer
|
||||
</button>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
{% if PermRestore %}
|
||||
<button
|
||||
class="btn btn-outline-secondary"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-restore"
|
||||
>
|
||||
<i class="bi-person-check"></i>
|
||||
Restaurer
|
||||
</button>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
|
||||
{% if PermArchive %}
|
||||
<button
|
||||
class="btn btn-outline-secondary"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-archive"
|
||||
>
|
||||
<i class="bi-person-slash"></i>
|
||||
Archiver
|
||||
</button>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% if PermArchive %}
|
||||
<button
|
||||
class="btn btn-outline-secondary"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-archive"
|
||||
>
|
||||
<i class="bi-person-slash"></i>
|
||||
Archiver
|
||||
</button>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% if PermPurge %}
|
||||
<button
|
||||
class="btn btn-outline-danger"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="row align-items-center">
|
||||
<div class="col-md-6">
|
||||
{% if !Person.DeletedAt.Valid %}
|
||||
{% if PermPurge %}
|
||||
<button
|
||||
class="btn btn-outline-danger"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="row align-items-center">
|
||||
<div class="col-md-6">
|
||||
{% if !Person.DeletedAt.Valid %}
|
||||
|
||||
{% if PermEdit %}
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/contacts/{{ Person.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square"></i>
|
||||
Modifier
|
||||
</a>
|
||||
{% endif %}
|
||||
{% if PermEdit %}
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/contacts/{{ Person.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square"></i>
|
||||
Modifier
|
||||
</a>
|
||||
{% endif %}
|
||||
|
||||
{% if PermConvert %}
|
||||
<button
|
||||
class="btn btn-outline-secondary"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-convert"
|
||||
>
|
||||
<i class="bi-arrow align-items-center-repeat"></i>
|
||||
Convertir en membre
|
||||
</button>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="col-md-6 text-md-end mt-2 mt-md-0">
|
||||
{% if Person.DeletedAt.Valid %}
|
||||
{% if PermConvert %}
|
||||
<button
|
||||
class="btn btn-outline-secondary"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-convert"
|
||||
>
|
||||
<i class="bi-arrow align-items-center-repeat"></i>
|
||||
Convertir en membre
|
||||
</button>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="col-md-6 text-md-end mt-2 mt-md-0">
|
||||
{% if Person.DeletedAt.Valid %}
|
||||
|
||||
{% if PermRestore %}
|
||||
<button
|
||||
class="btn btn-outline-secondary"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-restore"
|
||||
>
|
||||
<i class="bi-person-check"></i>
|
||||
Restaurer
|
||||
</button>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
{% if PermRestore %}
|
||||
<button
|
||||
class="btn btn-outline-secondary"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-restore"
|
||||
>
|
||||
<i class="bi-person-check"></i>
|
||||
Restaurer
|
||||
</button>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
|
||||
{% if PermArchive %}
|
||||
<button
|
||||
class="btn btn-outline-secondary"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-archive"
|
||||
>
|
||||
<i class="bi-person-slash"></i>
|
||||
Archiver
|
||||
</button>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
{% if PermArchive %}
|
||||
<button
|
||||
class="btn btn-outline-secondary"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-archive"
|
||||
>
|
||||
<i class="bi-person-slash"></i>
|
||||
Archiver
|
||||
</button>
|
||||
{% endif %}
|
||||
{% endif %}
|
||||
|
||||
{% if PermPurge %}
|
||||
<button
|
||||
class="btn btn-outline-danger"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% if PermPurge %}
|
||||
<button
|
||||
class="btn btn-outline-danger"
|
||||
type="button"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="modal-delete" class="modal" tabindex="-1">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
|
|
|
|||
|
|
@ -38,15 +38,15 @@
|
|||
</div>
|
||||
|
||||
<form id="person" method="post" class="mw-1200">
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<label for="last_name" class="form-label col-md-2 col-xl-3">
|
||||
|
|
@ -66,7 +66,9 @@
|
|||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<label for="first_name" class="form-label col-md-2 col-xl-3"> Prénom </label>
|
||||
<label for="first_name" class="form-label col-md-2 col-xl-3">
|
||||
Prénom
|
||||
</label>
|
||||
<div class="col">
|
||||
<input
|
||||
id="first_name"
|
||||
|
|
@ -95,7 +97,9 @@
|
|||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<label for="phone" class="form-label col-md-2 col-xl-3"> Téléphone fixe </label>
|
||||
<label for="phone" class="form-label col-md-2 col-xl-3">
|
||||
Téléphone fixe
|
||||
</label>
|
||||
<div class="col">
|
||||
<input
|
||||
id="phone"
|
||||
|
|
@ -125,7 +129,9 @@
|
|||
</div>
|
||||
|
||||
<div class="row align-items-center mb-2">
|
||||
<label for="address1" class="form-label col-md-2 col-xl-3"> Adresse </label>
|
||||
<label for="address1" class="form-label col-md-2 col-xl-3">
|
||||
Adresse
|
||||
</label>
|
||||
<div class="col">
|
||||
<input
|
||||
id="address1"
|
||||
|
|
@ -180,7 +186,9 @@
|
|||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<label for="section" class="form-label col-md-2 col-xl-3"> Section </label>
|
||||
<label for="section" class="form-label col-md-2 col-xl-3">
|
||||
Section
|
||||
</label>
|
||||
<div class="col">
|
||||
<select
|
||||
class="form-select"
|
||||
|
|
@ -211,7 +219,10 @@
|
|||
|
||||
{% for Field in Fields %}
|
||||
<div class="row align-items-center mb-3">
|
||||
<label for="field-{{ Field.ID }}" class="form-label col-md-2 col-xl-3">
|
||||
<label
|
||||
for="field-{{ Field.ID }}"
|
||||
class="form-label col-md-2 col-xl-3"
|
||||
>
|
||||
{{ Field.Name }}
|
||||
</label>
|
||||
<div class="col">
|
||||
|
|
@ -235,7 +246,8 @@
|
|||
id="field-{{ Field.ID }}"
|
||||
class="form-control"
|
||||
name="field-{{ Field.ID }}"
|
||||
row align-items-centers="4"
|
||||
row
|
||||
align-items-centers="4"
|
||||
autocomplete="off"
|
||||
>
|
||||
{% for FieldValue in FieldValues %}{% if FieldValue.FieldID == Field.ID %}{{ FieldValue.ValueString.String }}{% endif %}{% endfor %}</textarea
|
||||
|
|
|
|||
903
views/role.html
903
views/role.html
|
|
@ -14,395 +14,554 @@
|
|||
<hr />
|
||||
</div>
|
||||
|
||||
<div class="mw-1200">
|
||||
<div class="row align-items-center mb-4">
|
||||
<div class="col-md-2 col-xl-3">Nom</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Role.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mw-1200">
|
||||
<div class="row align-items-center mb-4">
|
||||
<div class="col-md-2 col-xl-3">Nom</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Role.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card mb-4">
|
||||
<div class="card-header">
|
||||
Permissions membres
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="card mb-4">
|
||||
<div class="card-header">Permissions membres</div>
|
||||
<div class="card-body">
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Afficher membres</div>
|
||||
<div class="col">
|
||||
{% if Role.ShowMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Afficher membres</div>
|
||||
<div class="col">
|
||||
{% if Role.ShowMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Créer membres</div>
|
||||
<div class="col">
|
||||
{% if Role.CreateMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Créer membres</div>
|
||||
<div class="col">
|
||||
{% if Role.CreateMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Modifier membres</div>
|
||||
<div class="col">
|
||||
{% if Role.EditMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Modifier membres</div>
|
||||
<div class="col">
|
||||
{% if Role.EditMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Afficher membres archivés</div>
|
||||
<div class="col">
|
||||
{% if Role.ShowArchivedMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Afficher membres archivés</div>
|
||||
<div class="col">
|
||||
{% if Role.ShowArchivedMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Archiver membres</div>
|
||||
<div class="col">
|
||||
{% if Role.ArchiveMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Archiver membres</div>
|
||||
<div class="col">
|
||||
{% if Role.ArchiveMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Restaurer membres</div>
|
||||
<div class="col">
|
||||
{% if Role.RestoreMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Restaurer membres</div>
|
||||
<div class="col">
|
||||
{% if Role.RestoreMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">
|
||||
Purger membres (suppression définitive)
|
||||
</div>
|
||||
<div class="col">
|
||||
{% if Role.PurgeMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Purger membres (suppression définitive)</div>
|
||||
<div class="col">
|
||||
{% if Role.PurgeMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center">
|
||||
<div class="col-md-2 col-xl-3">Convertir membres en contacts</div>
|
||||
<div class="col">
|
||||
{% if Role.ConvertMemberToContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center">
|
||||
<div class="col-md-2 col-xl-3">Convertir membres en contacts</div>
|
||||
<div class="col">
|
||||
{% if Role.ConvertMemberToContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card">
|
||||
<div class="card-header">Permissions contacts</div>
|
||||
<div class="card-body">
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Afficher contacts</div>
|
||||
<div class="col">
|
||||
{% if Role.ShowContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
Permissions contacts
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Afficher contacts</div>
|
||||
<div class="col">
|
||||
{% if Role.ShowContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Créer contacts</div>
|
||||
<div class="col">
|
||||
{% if Role.CreateContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Créer contacts</div>
|
||||
<div class="col">
|
||||
{% if Role.CreateContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Modifier contacts</div>
|
||||
<div class="col">
|
||||
{% if Role.EditContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Modifier contacts</div>
|
||||
<div class="col">
|
||||
{% if Role.EditContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Afficher contacts archivés</div>
|
||||
<div class="col">
|
||||
{% if Role.ShowArchivedContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Afficher contacts archivés</div>
|
||||
<div class="col">
|
||||
{% if Role.ShowArchivedContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Archiver contacts</div>
|
||||
<div class="col">
|
||||
{% if Role.ArchiveContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Archiver contacts</div>
|
||||
<div class="col">
|
||||
{% if Role.ArchiveContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Restaurer contacts</div>
|
||||
<div class="col">
|
||||
{% if Role.RestoreContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Restaurer contacts</div>
|
||||
<div class="col">
|
||||
{% if Role.RestoreContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">
|
||||
Purger contacts (suppression définitive)
|
||||
</div>
|
||||
<div class="col">
|
||||
{% if Role.PurgeContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Purger contacts (suppression définitive)</div>
|
||||
<div class="col">
|
||||
{% if Role.PurgeContact %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center">
|
||||
<div class="col-md-2 col-xl-3">Convertir contacts en membres</div>
|
||||
<div class="col">
|
||||
{% if Role.ConvertContactToMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Oui"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Non"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center">
|
||||
<div class="col-md-2 col-xl-3">Convertir contacts en membres</div>
|
||||
<div class="col">
|
||||
{% if Role.ConvertContactToMember %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="my-4 row align-items-center">
|
||||
<div class="col-6">
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/roles/{{ Role.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square"></i>
|
||||
Modifier
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-danger"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="my-4 row align-items-center">
|
||||
<div class="col-6">
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/roles/{{ Role.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square"></i>
|
||||
Modifier
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-danger"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="modal-delete" class="modal" tabindex="-1">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
|
|
|
|||
|
|
@ -23,15 +23,15 @@
|
|||
</div>
|
||||
|
||||
<form id="role" method="post" class="mw-1200">
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<label for="name" class="form-label col-md-2"> Nom </label>
|
||||
|
|
|
|||
|
|
@ -16,150 +16,150 @@
|
|||
<hr />
|
||||
</div>
|
||||
|
||||
<div class="mw-1200">
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-2 col-xl-3">Nom</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Section.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mw-1200">
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-2 col-xl-3">Nom</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Section.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-2 col-xl-3">Nom technique</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Section.ShortName }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-2 col-xl-3">Nom technique</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Section.ShortName }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-2 col-xl-3">Section parente</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
{% if Section.ParentSectionID %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Section.ParentSection.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-2 col-xl-3">Section parente</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
{% if Section.ParentSectionID %}
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ Section.ParentSection.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-2 col-xl-3">Peut contenir des membres</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
{% if Section.ContainsMembers %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-2 col-xl-3">Peut contenir des membres</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
{% if Section.ContainsMembers %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-2 col-xl-3">Peut contenir des contacts</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
{% if Section.ContainsContacts %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-2 col-xl-3">Peut contenir des contacts</div>
|
||||
<div class="col-md-10 col-xl-9">
|
||||
{% if Section.ContainsContacts %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="my-4 row">
|
||||
<div class="col-6">
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/sections/{{ Section.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square"></i>
|
||||
Modifier
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-danger"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="my-4 row">
|
||||
<div class="col-6">
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/sections/{{ Section.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square"></i>
|
||||
Modifier
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-danger"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="modal-delete" class="modal" tabindex="-1">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
<div class="modal-content">
|
||||
<div class="modal-body">
|
||||
<p>Êtes-vous sûr de vouloir supprimer cette section ?</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-secondary"
|
||||
data-bs-dismiss="modal"
|
||||
>
|
||||
<i class="bi-x-lg me-1"></i>
|
||||
Annuler
|
||||
</button>
|
||||
<div id="modal-delete" class="modal" tabindex="-1">
|
||||
<div class="modal-dialog modal-dialog-centered">
|
||||
<div class="modal-content">
|
||||
<div class="modal-body">
|
||||
<p>Êtes-vous sûr de vouloir supprimer cette section ?</p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-secondary"
|
||||
data-bs-dismiss="modal"
|
||||
>
|
||||
<i class="bi-x-lg me-1"></i>
|
||||
Annuler
|
||||
</button>
|
||||
|
||||
<form
|
||||
action="/admin/sections/{{ Section.ID }}/delete"
|
||||
method="post"
|
||||
class="d-inline p-0"
|
||||
>
|
||||
<button class="btn btn-outline-danger" type="submit">
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<form
|
||||
action="/admin/sections/{{ Section.ID }}/delete"
|
||||
method="post"
|
||||
class="d-inline p-0"
|
||||
>
|
||||
<button class="btn btn-outline-danger" type="submit">
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
|
|
|||
|
|
@ -25,15 +25,15 @@
|
|||
</div>
|
||||
|
||||
<form id="section" method="post" class="mw-1200">
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="row mb-3">
|
||||
<label for="name" class="form-label col-md-2 col-xl-3"> Nom </label>
|
||||
|
|
|
|||
294
views/user.html
294
views/user.html
|
|
@ -16,158 +16,160 @@
|
|||
<hr />
|
||||
</div>
|
||||
|
||||
<div class="mw-1200">
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Nom complet</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ User.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mw-1200">
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Nom complet</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ User.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Email</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ User.Email }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Email</div>
|
||||
<div class="col">
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ User.Email }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Administrateur</div>
|
||||
<div class="col">
|
||||
{% if User.IsAdmin %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Administrateur</div>
|
||||
<div class="col">
|
||||
{% if User.IsAdmin %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Ecran de bienvenue à la prochaine connexion</div>
|
||||
<div class="col">
|
||||
{% if User.SkipWelcome %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">
|
||||
Ecran de bienvenue à la prochaine connexion
|
||||
</div>
|
||||
<div class="col">
|
||||
{% if User.SkipWelcome %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Non" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Oui" disabled />
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Double facteur (TOTP)</div>
|
||||
<div class="col">
|
||||
{% if User.TotpSecret.Valid %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Enrôlé" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Enrôlement lors de la prochaine connexion"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">Double facteur (TOTP)</div>
|
||||
<div class="col">
|
||||
{% if User.TotpSecret.Valid %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-check-lg text-success"></i>
|
||||
</span>
|
||||
<input type="text" class="form-control" value="Enrôlé" disabled />
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-x-lg text-danger"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="Enrôlement lors de la prochaine connexion"
|
||||
disabled
|
||||
/>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mt-4 mb-3">
|
||||
<span class="h4"> Permissions </span>
|
||||
</div>
|
||||
{% if UserRoles %}
|
||||
{% for UserRole in UserRoles %}
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">{{ UserRole.Section.Name }}</div>
|
||||
<div class="col">
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-key"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ UserRole.Role.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
<div>Pas encore de permissions pour cet utilisateur.</div>
|
||||
{% endif %}
|
||||
<div class="mt-4 mb-3">
|
||||
<span class="h4"> Permissions </span>
|
||||
</div>
|
||||
{% if UserRoles %}
|
||||
{% for UserRole in UserRoles %}
|
||||
<div class="row align-items-center mb-3">
|
||||
<div class="col-md-2 col-xl-3">{{ UserRole.Section.Name }}</div>
|
||||
<div class="col">
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-key"></i>
|
||||
</span>
|
||||
<input
|
||||
type="text"
|
||||
class="form-control"
|
||||
value="{{ UserRole.Role.Name }}"
|
||||
disabled
|
||||
readonly
|
||||
/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% else %}
|
||||
<div>Pas encore de permissions pour cet utilisateur.</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="my-4 row align-items-center">
|
||||
<div class="col-6">
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/users/{{ User.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square me-1"></i>
|
||||
Modifier
|
||||
</a>
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/users/{{ User.ID }}/permissions"
|
||||
>
|
||||
<i class="bi-key me-1"></i>
|
||||
Permissions
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-danger"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="my-4 row align-items-center">
|
||||
<div class="col-6">
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/users/{{ User.ID }}/edit"
|
||||
>
|
||||
<i class="bi-pencil-square me-1"></i>
|
||||
Modifier
|
||||
</a>
|
||||
<a
|
||||
class="btn btn-outline-primary"
|
||||
href="/admin/users/{{ User.ID }}/permissions"
|
||||
>
|
||||
<i class="bi-key me-1"></i>
|
||||
Permissions
|
||||
</a>
|
||||
</div>
|
||||
<div class="col-6 text-end">
|
||||
<button
|
||||
type="button"
|
||||
class="btn btn-outline-danger"
|
||||
data-bs-toggle="modal"
|
||||
data-bs-target="#modal-delete"
|
||||
>
|
||||
<i class="bi-trash3 me-1"></i>
|
||||
Supprimer
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div id="modal-delete" class="modal" tabindex="-1">
|
||||
|
|
|
|||
|
|
@ -25,18 +25,20 @@
|
|||
</div>
|
||||
|
||||
<form id="user" method="post" class="mw-1200">
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<label for="name" class="form-label col-md-2 col-xl-3"> Nom complet </label>
|
||||
<label for="name" class="form-label col-md-2 col-xl-3">
|
||||
Nom complet
|
||||
</label>
|
||||
<div class="col">
|
||||
<input
|
||||
id="name"
|
||||
|
|
@ -83,7 +85,9 @@
|
|||
</div>
|
||||
|
||||
<div class="row align-items-center mb-3">
|
||||
<label for="password" class="form-label col-md-2 col-xl-3"> Mot de passe </label>
|
||||
<label for="password" class="form-label col-md-2 col-xl-3">
|
||||
Mot de passe
|
||||
</label>
|
||||
<div class="col">
|
||||
<input
|
||||
id="password"
|
||||
|
|
|
|||
|
|
@ -20,59 +20,59 @@
|
|||
</div>
|
||||
|
||||
{% if Sections %}
|
||||
<form id="user" method="post" class="mw-1200">
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
<form id="user" method="post" class="mw-1200">
|
||||
{% if Errors %}
|
||||
<div class="alert alert-danger">
|
||||
<ul class="m-0">
|
||||
{% for Error in Errors %}
|
||||
<li>{{ Error }}</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% for Section in Sections %}
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-2 col-xl-3">{{ Section.Name }}</div>
|
||||
<div class="col">
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-key"></i>
|
||||
</span>
|
||||
<select
|
||||
class="form-select"
|
||||
name="section-{{ Section.ID }}"
|
||||
id="section-{{ Section.ID }}"
|
||||
autocomplete="off"
|
||||
>
|
||||
<option value="0">Choisir...</option>
|
||||
{% for Role in Roles %}
|
||||
<option
|
||||
value="{{ Role.ID }}"
|
||||
{% for UserRole in UserRoles %}
|
||||
{% if Section.ID == UserRole.SectionID and Role.ID == UserRole.RoleID %}
|
||||
selected
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
>
|
||||
{{ Role.Name }}
|
||||
</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
{% for Section in Sections %}
|
||||
<div class="row mb-3">
|
||||
<div class="col-md-2 col-xl-3">{{ Section.Name }}</div>
|
||||
<div class="col">
|
||||
<div class="input-group">
|
||||
<span class="input-group-text">
|
||||
<i class="bi-key"></i>
|
||||
</span>
|
||||
<select
|
||||
class="form-select"
|
||||
name="section-{{ Section.ID }}"
|
||||
id="section-{{ Section.ID }}"
|
||||
autocomplete="off"
|
||||
>
|
||||
<option value="0">Choisir...</option>
|
||||
{% for Role in Roles %}
|
||||
<option
|
||||
value="{{ Role.ID }}"
|
||||
{% for UserRole in UserRoles %}
|
||||
{% if Section.ID == UserRole.SectionID and Role.ID == UserRole.RoleID %}
|
||||
selected
|
||||
{% endif %}
|
||||
{% endfor %}
|
||||
>
|
||||
{{ Role.Name }}
|
||||
</option>
|
||||
{% endfor %}
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
{% endfor %}
|
||||
|
||||
<div class="my-4">
|
||||
<button class="btn btn-outline-primary" type="submit">
|
||||
<i class="me-1 bi-floppy"></i>
|
||||
Enregistrer
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
<div class="my-4">
|
||||
<button class="btn btn-outline-primary" type="submit">
|
||||
<i class="me-1 bi-floppy"></i>
|
||||
Enregistrer
|
||||
</button>
|
||||
</div>
|
||||
</form>
|
||||
{% else %}
|
||||
<div class="my-4">Pas de section pour le moment</div>
|
||||
<div class="my-4">Pas de section pour le moment</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endblock %}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue