Merge recent UI & Postgres work into main branch #4
13 changed files with 388 additions and 382 deletions
152
views/admin.html
152
views/admin.html
|
|
@ -13,87 +13,85 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row mw-900">
|
<div class="row mw-900">
|
||||||
|
<div class="col-12">
|
||||||
|
<a class="dashboard-tile" href="/admin/sections">
|
||||||
|
<div class="alert alert-primary">
|
||||||
|
<div class="row align-items-center">
|
||||||
|
<div class="col-12 text-center text-md-start col-md-6">
|
||||||
|
<i class="bi-building me-2"></i>
|
||||||
|
Gestion des sections
|
||||||
|
</div>
|
||||||
|
<div class="col text-center text-md-end fs-1">
|
||||||
|
{{ SectionsCount }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<a class="dashboard-tile" href="/admin/sections">
|
<a class="dashboard-tile" href="/admin/lists">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center">
|
||||||
<div class="col-12 text-center text-md-start col-md-6">
|
<div class="col-12 text-center text-md-start col-md-6">
|
||||||
<i class="bi-building me-2"></i>
|
<i class="bi-list-check me-2"></i>
|
||||||
Gestion des sections
|
Gestion des listes
|
||||||
</div>
|
</div>
|
||||||
<div class="col text-center text-md-end fs-1">
|
<div class="col text-center text-md-end fs-1">
|
||||||
{{ SectionsCount }}
|
{{ ListsCount }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<a class="dashboard-tile" href="/admin/lists">
|
<a class="dashboard-tile" href="/admin/fields">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center">
|
||||||
<div class="col-12 text-center text-md-start col-md-6">
|
<div class="col-12 text-center text-md-start col-md-6">
|
||||||
<i class="bi-list-check me-2"></i>
|
<i class="bi-database-add me-2"></i>
|
||||||
Gestion des listes
|
Gestion des champs supplémentaires
|
||||||
</div>
|
</div>
|
||||||
<div class="col text-center text-md-end fs-1">
|
<div class="col text-center text-md-end fs-1">
|
||||||
{{ ListsCount }}
|
{{ FieldsCount }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<a class="dashboard-tile" href="/admin/fields">
|
<a class="dashboard-tile" href="/admin/users">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center">
|
||||||
<div class="col-12 text-center text-md-start col-md-6">
|
<div class="col-12 text-center text-md-start col-md-6">
|
||||||
<i class="bi-database-add me-2"></i>
|
<i class="bi-person-square me-2"></i>
|
||||||
Gestion des champs supplémentaires
|
Gestion des utilisateurs
|
||||||
</div>
|
</div>
|
||||||
<div class="col text-center text-md-end fs-1">
|
<div class="col text-center text-md-end fs-1">
|
||||||
{{ FieldsCount }}
|
{{ UsersCount }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-12">
|
|
||||||
<a class="dashboard-tile" href="/admin/users">
|
|
||||||
<div class="alert alert-primary">
|
|
||||||
<div class="row align-items-center">
|
|
||||||
<div class="col-12 text-center text-md-start col-md-6">
|
|
||||||
<i class="bi-person-square me-2"></i>
|
|
||||||
Gestion des utilisateurs
|
|
||||||
</div>
|
|
||||||
<div class="col text-center text-md-end fs-1">
|
|
||||||
{{ UsersCount }}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col-12">
|
|
||||||
<a class="dashboard-tile" href="/admin/roles">
|
|
||||||
<div class="alert alert-primary">
|
|
||||||
<div class="row align-items-center">
|
|
||||||
<div class="col-12 text-center text-md-start col-md-6">
|
|
||||||
<i class="bi-briefcase me-2"></i>
|
|
||||||
Gestion des rôles
|
|
||||||
</div>
|
|
||||||
<div class="col text-center text-md-end fs-1">
|
|
||||||
{{ RolesCount }}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</a>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
<div class="col-12">
|
||||||
|
<a class="dashboard-tile" href="/admin/roles">
|
||||||
|
<div class="alert alert-primary">
|
||||||
|
<div class="row align-items-center">
|
||||||
|
<div class="col-12 text-center text-md-start col-md-6">
|
||||||
|
<i class="bi-briefcase me-2"></i>
|
||||||
|
Gestion des rôles
|
||||||
|
</div>
|
||||||
|
<div class="col text-center text-md-end fs-1">
|
||||||
|
{{ RolesCount }}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,9 @@
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<div class="row align-items-center mb-3">
|
<div class="row align-items-center mb-3">
|
||||||
<label for="name" class="form-label mb-0 col-md-2"> Nom du champ </label>
|
<label for="name" class="form-label mb-0 col-md-2">
|
||||||
|
Nom du champ
|
||||||
|
</label>
|
||||||
<div class="col-md-10">
|
<div class="col-md-10">
|
||||||
<input
|
<input
|
||||||
id="name"
|
id="name"
|
||||||
|
|
|
||||||
|
|
@ -13,48 +13,47 @@
|
||||||
<hr />
|
<hr />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row my-3">
|
<div class="row my-3">
|
||||||
<div class="col-sm-6">
|
<div class="col-sm-6">
|
||||||
<span class="h2 d-none d-sm-inline">Champs supplémentaires</span>
|
<span class="h2 d-none d-sm-inline">Champs supplémentaires</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-6 text-end">
|
<div class="col-sm-6 text-end">
|
||||||
<a class="btn btn-outline-primary" href="/admin/fields/add">
|
<a class="btn btn-outline-primary" href="/admin/fields/add">
|
||||||
<i class="bi-plus-lg"></i>
|
<i class="bi-plus-lg"></i>
|
||||||
Ajouter
|
Ajouter
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="card mb-3">
|
<div class="card mb-3">
|
||||||
<div class="card-header">Membres</div>
|
<div class="card-header">Membres</div>
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
{% for Field in Fields %}
|
{% for Field in Fields %}
|
||||||
{% if Field.PersonType == "member" %}
|
{% if Field.PersonType == "member" %}
|
||||||
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center">
|
||||||
|
<div class="col-12 col-md-8 col-lg-6">
|
||||||
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
||||||
|
<div>
|
||||||
|
<a href="/admin/fields/{{ Field.ID }}">
|
||||||
|
{{ Field.Name }}
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="col-12 col-md-8 col-lg-6">
|
<div class="col-12 col-md-4 col-lg-3">
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Type de champ</div>
|
||||||
<div>
|
<div>
|
||||||
<a href="/admin/fields/{{ Field.ID }}"> {{ Field.Name }} </a>
|
{% for Key, Value in FieldTypes %}
|
||||||
</div>
|
{% if Key == Field.FieldType %}
|
||||||
</div>
|
<span class="badge text-bg-primary"> {{ Value }} </span>
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="col-12 col-md-4 col-lg-3">
|
<div class="col text-lg-end">
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Type de champ</div>
|
<div class="btn-group mb-2 mt-3 mt-lg-0 mb-lg-0">
|
||||||
<div>
|
|
||||||
{% for Key, Value in FieldTypes %}
|
|
||||||
{% if Key == Field.FieldType %}
|
|
||||||
<span class="badge text-bg-primary">
|
|
||||||
{{ Value }}
|
|
||||||
</span>
|
|
||||||
{% endif %}
|
|
||||||
{% endfor %}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col text-lg-end">
|
|
||||||
<div class="btn-group mb-2 mt-3 mt-lg-0 mb-lg-0">
|
|
||||||
<a
|
<a
|
||||||
class="btn btn-sm btn-outline-primary"
|
class="btn btn-sm btn-outline-primary"
|
||||||
href="/admin/fields/{{ Field.ID }}/move-up"
|
href="/admin/fields/{{ Field.ID }}/move-up"
|
||||||
|
|
@ -70,45 +69,43 @@
|
||||||
Descendre
|
Descendre
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
<div class="card">
|
||||||
</div>
|
<div class="card-header">Sympathisants</div>
|
||||||
{% endif %}
|
|
||||||
{% endfor %}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="card">
|
|
||||||
<div class="card-header">Sympathisants</div>
|
|
||||||
<div class="card-body">
|
<div class="card-body">
|
||||||
{% for Field in Fields %}
|
{% for Field in Fields %}
|
||||||
{% if Field.PersonType == "contact" %}
|
{% if Field.PersonType == "contact" %}
|
||||||
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center">
|
||||||
|
<div class="col-12 col-md-8 col-lg-6">
|
||||||
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
||||||
|
<div>
|
||||||
|
<a href="/admin/fields/{{ Field.ID }}">
|
||||||
|
{{ Field.Name }}
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="col-12 col-md-8 col-lg-6">
|
<div class="col-12 col-md-4 col-lg-3">
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Type de champ</div>
|
||||||
<div>
|
<div>
|
||||||
<a href="/admin/fields/{{ Field.ID }}"> {{ Field.Name }} </a>
|
{% for Key, Value in FieldTypes %}
|
||||||
</div>
|
{% if Key == Field.FieldType %}
|
||||||
</div>
|
<span class="badge text-bg-primary"> {{ Value }} </span>
|
||||||
|
{% endif %}
|
||||||
|
{% endfor %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="col-12 col-md-4 col-lg-3">
|
<div class="col text-lg-end">
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Type de champ</div>
|
<div class="btn-group mb-2 mt-3 mt-lg-0 mb-lg-0">
|
||||||
<div>
|
|
||||||
{% for Key, Value in FieldTypes %}
|
|
||||||
{% if Key == Field.FieldType %}
|
|
||||||
<span class="badge text-bg-primary">
|
|
||||||
{{ Value }}
|
|
||||||
</span>
|
|
||||||
{% endif %}
|
|
||||||
{% endfor %}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="col text-lg-end">
|
|
||||||
<div class="btn-group mb-2 mt-3 mt-lg-0 mb-lg-0">
|
|
||||||
<a
|
<a
|
||||||
class="btn btn-sm btn-outline-primary"
|
class="btn btn-sm btn-outline-primary"
|
||||||
href="/admin/fields/{{ Field.ID }}/move-up"
|
href="/admin/fields/{{ Field.ID }}/move-up"
|
||||||
|
|
@ -124,13 +121,12 @@
|
||||||
Descendre
|
Descendre
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
{% endif %}
|
||||||
{% endif %}
|
{% endfor %}
|
||||||
{% endfor %}
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|
|
||||||
|
|
@ -16,51 +16,51 @@
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<a class="dashboard-tile" href="/members">
|
<a class="dashboard-tile" href="/members">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center">
|
||||||
<div class="col-12 text-center text-md-start col-md-6">
|
<div class="col-12 text-center text-md-start col-md-6">
|
||||||
<i class="bi-people me-2"></i>
|
<i class="bi-people me-2"></i>
|
||||||
Gestion des membres
|
Gestion des membres
|
||||||
</div>
|
</div>
|
||||||
<div class="col text-center text-md-end fs-1">
|
<div class="col text-center text-md-end fs-1">
|
||||||
{{ MembersCount }}
|
{{ MembersCount }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if Globals.AllowContactsPage %}
|
{% if Globals.AllowContactsPage %}
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<a class="dashboard-tile" href="/contacts">
|
<a class="dashboard-tile" href="/contacts">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center">
|
||||||
<div class="col-12 text-center text-md-start col-md-6">
|
<div class="col-12 text-center text-md-start col-md-6">
|
||||||
<i class="bi-telephone me-2"></i>
|
<i class="bi-telephone me-2"></i>
|
||||||
Gestion des sympathisants
|
Gestion des sympathisants
|
||||||
</div>
|
</div>
|
||||||
<div class="col text-center text-md-end fs-1">
|
<div class="col text-center text-md-end fs-1">
|
||||||
{{ ContactsCount }}
|
{{ ContactsCount }}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if Globals.UserIsAdmin %}
|
{% if Globals.UserIsAdmin %}
|
||||||
<div class="col-12">
|
<div class="col-12">
|
||||||
<a class="dashboard-tile" href="/admin">
|
<a class="dashboard-tile" href="/admin">
|
||||||
<div class="alert alert-primary">
|
<div class="alert alert-primary">
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center">
|
||||||
<div class="col-12 text-center text-md-start col-md-6">
|
<div class="col-12 text-center text-md-start col-md-6">
|
||||||
<i class="bi-gear me-2"></i>
|
<i class="bi-gear me-2"></i>
|
||||||
Administration de l'application
|
Administration de l'application
|
||||||
</div>
|
</div>
|
||||||
<div class="col text-center text-md-end fs-1">
|
<div class="col text-center text-md-end fs-1">
|
||||||
<i class="bi-arrow-right"></i>
|
<i class="bi-arrow-right"></i>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -13,44 +13,42 @@
|
||||||
<hr />
|
<hr />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row my-3">
|
<div class="row my-3">
|
||||||
<div class="col-sm-6">
|
<div class="col-sm-6">
|
||||||
<span class="h2 d-none d-sm-inline">Listes</span>
|
<span class="h2 d-none d-sm-inline">Listes</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-6 text-end">
|
<div class="col-sm-6 text-end">
|
||||||
<a class="btn btn-outline-primary" href="/admin/lists/add">
|
<a class="btn btn-outline-primary" href="/admin/lists/add">
|
||||||
<i class="bi-plus-lg"></i>
|
<i class="bi-plus-lg"></i>
|
||||||
Ajouter
|
Ajouter
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% if Lists %}
|
{% if Lists %}
|
||||||
{% for List in Lists %}
|
{% for List in Lists %}
|
||||||
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
<div class="col-12 col-sm-8 col-md-9 col-xl-6">
|
||||||
<div class="col-12 col-sm-8 col-md-9 col-xl-6">
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
|
||||||
<div>
|
<div>
|
||||||
<a href="/admin/lists/{{ List.ID }}"> {{ List.Name }} </a>
|
<a href="/admin/lists/{{ List.ID }}"> {{ List.Name }} </a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col">
|
<div class="col">
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Choix multiples</div>
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Choix multiples</div>
|
||||||
<div>
|
<div>
|
||||||
{% if List.Multi %}
|
{% if List.Multi %}
|
||||||
<span class="badge text-bg-success">Oui</span>
|
<span class="badge text-bg-success">Oui</span>
|
||||||
{% else %}
|
{% else %}
|
||||||
<span class="badge text-bg-danger">Non</span>
|
<span class="badge text-bg-danger">Non</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
{% endfor %}
|
||||||
{% endfor %}
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<div class="my-4">Pas de liste pour le moment</div>
|
<div class="my-4">Pas de liste pour le moment</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
|
||||||
|
|
@ -17,46 +17,46 @@
|
||||||
<hr />
|
<hr />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row my-3">
|
<div class="row my-3">
|
||||||
<div class="col-sm-6">
|
<div class="col-sm-6">
|
||||||
{% if MembersPage %}
|
{% if MembersPage %}
|
||||||
<span class="h2 d-none d-sm-inline">Membres</span>
|
<span class="h2 d-none d-sm-inline">Membres</span>
|
||||||
{% else %}
|
{% else %}
|
||||||
<span class="h2 d-none d-sm-inline">Sympathisants</span>
|
<span class="h2 d-none d-sm-inline">Sympathisants</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-6 text-end">
|
<div class="col-sm-6 text-end">
|
||||||
{% if MembersPage %}
|
{% if MembersPage %}
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
<a class="btn btn-outline-primary" href="/members/add">
|
<a class="btn btn-outline-primary" href="/members/add">
|
||||||
<i class="bi-plus-lg"></i>
|
<i class="bi-plus-lg"></i>
|
||||||
Ajouter
|
Ajouter
|
||||||
</a>
|
</a>
|
||||||
<a
|
<a
|
||||||
class="btn btn-outline-primary"
|
class="btn btn-outline-primary"
|
||||||
href="/members/export?s={{ SearchJSON|urlencode }}"
|
href="/members/export?s={{ SearchJSON|urlencode }}"
|
||||||
>
|
>
|
||||||
<i class="bi-filetype-csv"></i>
|
<i class="bi-filetype-csv"></i>
|
||||||
Exporter
|
Exporter
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
{% else %}
|
{% else %}
|
||||||
<div class="btn-group">
|
<div class="btn-group">
|
||||||
<a class="btn btn-outline-primary" href="/contacts/add">
|
<a class="btn btn-outline-primary" href="/contacts/add">
|
||||||
<i class="bi-plus-lg"></i>
|
<i class="bi-plus-lg"></i>
|
||||||
Ajouter
|
Ajouter
|
||||||
</a>
|
</a>
|
||||||
<a
|
<a
|
||||||
class="btn btn-outline-primary"
|
class="btn btn-outline-primary"
|
||||||
href="/contacts/export?s={{ SearchJSON|urlencode }}"
|
href="/contacts/export?s={{ SearchJSON|urlencode }}"
|
||||||
>
|
>
|
||||||
<i class="bi-filetype-csv"></i>
|
<i class="bi-filetype-csv"></i>
|
||||||
Exporter
|
Exporter
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div id="search-container" class="h-100 p-4 mb-3 bg-body-tertiary border">
|
<div id="search-container" class="h-100 p-4 mb-3 bg-body-tertiary border">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,9 @@
|
||||||
{% if Person.IsMember %}
|
{% if Person.IsMember %}
|
||||||
<li class="breadcrumb-item"><a href="/members">Membres</a></li>
|
<li class="breadcrumb-item"><a href="/members">Membres</a></li>
|
||||||
{% else %}
|
{% else %}
|
||||||
<li class="breadcrumb-item"><a href="/contacts">Sympathisants</a></li>
|
<li class="breadcrumb-item">
|
||||||
|
<a href="/contacts">Sympathisants</a>
|
||||||
|
</li>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<li class="breadcrumb-item active">
|
<li class="breadcrumb-item active">
|
||||||
|
|
@ -545,9 +547,13 @@
|
||||||
<div class="modal-content">
|
<div class="modal-content">
|
||||||
<div class="modal-body">
|
<div class="modal-body">
|
||||||
{% if Person.IsMember %}
|
{% if Person.IsMember %}
|
||||||
<p>Êtes-vous sûr de vouloir convertir ce membre en sympathisant ?</p>
|
<p>
|
||||||
|
Êtes-vous sûr de vouloir convertir ce membre en sympathisant ?
|
||||||
|
</p>
|
||||||
{% else %}
|
{% else %}
|
||||||
<p>Êtes-vous sûr de vouloir convertir ce sympathisant en membre ?</p>
|
<p>
|
||||||
|
Êtes-vous sûr de vouloir convertir ce sympathisant en membre ?
|
||||||
|
</p>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,9 @@
|
||||||
{% if Person.IsMember or MembersPage %}
|
{% if Person.IsMember or MembersPage %}
|
||||||
<li class="breadcrumb-item"><a href="/members">Membres</a></li>
|
<li class="breadcrumb-item"><a href="/members">Membres</a></li>
|
||||||
{% else %}
|
{% else %}
|
||||||
<li class="breadcrumb-item"><a href="/contacts">Sympathisants</a></li>
|
<li class="breadcrumb-item">
|
||||||
|
<a href="/contacts">Sympathisants</a>
|
||||||
|
</li>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
{% if Person.ID %}
|
{% if Person.ID %}
|
||||||
|
|
|
||||||
|
|
@ -251,7 +251,9 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center">
|
||||||
<div class="col-md-2 col-xl-3">Convertir membres en sympathisants</div>
|
<div class="col-md-2 col-xl-3">
|
||||||
|
Convertir membres en sympathisants
|
||||||
|
</div>
|
||||||
<div class="col">
|
<div class="col">
|
||||||
{% if Role.ConvertMemberToContact %}
|
{% if Role.ConvertMemberToContact %}
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
|
|
@ -506,7 +508,9 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row align-items-center">
|
<div class="row align-items-center">
|
||||||
<div class="col-md-2 col-xl-3">Convertir sympathisants en membres</div>
|
<div class="col-md-2 col-xl-3">
|
||||||
|
Convertir sympathisants en membres
|
||||||
|
</div>
|
||||||
<div class="col">
|
<div class="col">
|
||||||
{% if Role.ConvertContactToMember %}
|
{% if Role.ConvertContactToMember %}
|
||||||
<div class="input-group">
|
<div class="input-group">
|
||||||
|
|
|
||||||
|
|
@ -13,33 +13,31 @@
|
||||||
<hr />
|
<hr />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row my-3">
|
<div class="row my-3">
|
||||||
<div class="col-sm-6">
|
<div class="col-sm-6">
|
||||||
<span class="h2 d-none d-sm-inline">Rôles</span>
|
<span class="h2 d-none d-sm-inline">Rôles</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-6 text-end">
|
<div class="col-sm-6 text-end">
|
||||||
<a class="btn btn-outline-primary" href="/admin/roles/add">
|
<a class="btn btn-outline-primary" href="/admin/roles/add">
|
||||||
<i class="bi-plus-lg"></i>
|
<i class="bi-plus-lg"></i>
|
||||||
Ajouter
|
Ajouter
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% if Roles %}
|
{% if Roles %}
|
||||||
{% for Role in Roles %}
|
{% for Role in Roles %}
|
||||||
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
<div class="col">
|
||||||
<div class="col">
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
|
||||||
<div>
|
<div>
|
||||||
<a href="/admin/roles/{{ Role.ID }}"> {{ Role.Name }} </a>
|
<a href="/admin/roles/{{ Role.ID }}"> {{ Role.Name }} </a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
{% endfor %}
|
||||||
{% endfor %}
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<div class="my-4">Pas de rôle pour le moment</div>
|
<div class="my-4">Pas de rôle pour le moment</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
|
||||||
|
|
@ -36,7 +36,9 @@
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
||||||
<div class="row align-items-center mb-3">
|
<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-md-10 col-xl-9">
|
<div class="col-md-10 col-xl-9">
|
||||||
<input
|
<input
|
||||||
id="name"
|
id="name"
|
||||||
|
|
|
||||||
|
|
@ -13,70 +13,74 @@
|
||||||
<hr />
|
<hr />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row my-3">
|
<div class="row my-3">
|
||||||
<div class="col-sm-6">
|
<div class="col-sm-6">
|
||||||
<span class="h2 d-none d-sm-inline">Sections</span>
|
<span class="h2 d-none d-sm-inline">Sections</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-6 text-end">
|
<div class="col-sm-6 text-end">
|
||||||
<a class="btn btn-outline-primary" href="/admin/sections/add">
|
<a class="btn btn-outline-primary" href="/admin/sections/add">
|
||||||
<i class="bi-plus-lg"></i>
|
<i class="bi-plus-lg"></i>
|
||||||
Ajouter
|
Ajouter
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% if Sections %}
|
{% if Sections %}
|
||||||
{% for Section in Sections %}
|
{% for Section in Sections %}
|
||||||
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
<div class="col-12 col-sm-8 col-md-9 col-xl-3 order-1">
|
||||||
<div class="col-12 col-sm-8 col-md-9 col-xl-3 order-1">
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
|
||||||
<div>
|
<div>
|
||||||
<a href="/admin/sections/{{ Section.ID }}">
|
<a href="/admin/sections/{{ Section.ID }}">
|
||||||
{{ Section.Name }}
|
{{ Section.Name }}
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-12 col-sm-8 col-md-9 col-xl-3 order-2 order-sm-3 order-xl-2">
|
<div
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Section parente</div>
|
class="col-12 col-sm-8 col-md-9 col-xl-3 order-2 order-sm-3 order-xl-2"
|
||||||
|
>
|
||||||
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Section parente</div>
|
||||||
<div>
|
<div>
|
||||||
{% if Section.ParentSectionID %}
|
{% if Section.ParentSectionID %}
|
||||||
<a href="/admin/sections/{{ Section.ParentSectionID }}">
|
<a href="/admin/sections/{{ Section.ParentSectionID }}">
|
||||||
{{ Section.ParentSection.Name }}
|
{{ Section.ParentSection.Name }}
|
||||||
</a>
|
</a>
|
||||||
{% else %}
|
{% else %}
|
||||||
<span class="badge text-bg-danger">Pas de section parente</span>
|
<span class="badge text-bg-danger"
|
||||||
{% endif %}
|
>Pas de section parente</span
|
||||||
</div>
|
>
|
||||||
</div>
|
{% endif %}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="col-12 col-sm-4 col-md-3 col-xl-3 order-3 order-sm-2 order-xl-3">
|
<div
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Membres</div>
|
class="col-12 col-sm-4 col-md-3 col-xl-3 order-3 order-sm-2 order-xl-3"
|
||||||
|
>
|
||||||
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Membres</div>
|
||||||
<div>
|
<div>
|
||||||
{% if Section.ContainsMembers %}
|
{% if Section.ContainsMembers %}
|
||||||
<span class="badge text-bg-success">Oui</span>
|
<span class="badge text-bg-success">Oui</span>
|
||||||
{% else %}
|
{% else %}
|
||||||
<span class="badge text-bg-danger">Non</span>
|
<span class="badge text-bg-danger">Non</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-12 col-sm-4 col-md-3 col-xl-3 order-4">
|
<div class="col-12 col-sm-4 col-md-3 col-xl-3 order-4">
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Sympathisants</div>
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Sympathisants</div>
|
||||||
<div>
|
<div>
|
||||||
{% if Section.ContainsContacts %}
|
{% if Section.ContainsContacts %}
|
||||||
<span class="badge text-bg-success">Oui</span>
|
<span class="badge text-bg-success">Oui</span>
|
||||||
{% else %}
|
{% else %}
|
||||||
<span class="badge text-bg-danger">Non</span>
|
<span class="badge text-bg-danger">Non</span>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
{% endfor %}
|
||||||
{% endfor %}
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<div class="my-4">Pas de section pour le moment</div>
|
<div class="my-4">Pas de section pour le moment</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
|
||||||
|
|
@ -13,51 +13,47 @@
|
||||||
<hr />
|
<hr />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="row my-3">
|
<div class="row my-3">
|
||||||
<div class="col-sm-6">
|
<div class="col-sm-6">
|
||||||
<span class="h2 d-none d-sm-inline">Utilisateurs</span>
|
<span class="h2 d-none d-sm-inline">Utilisateurs</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="col-sm-6 text-end">
|
<div class="col-sm-6 text-end">
|
||||||
<a class="btn btn-outline-primary" href="/admin/users/add">
|
<a class="btn btn-outline-primary" href="/admin/users/add">
|
||||||
<i class="bi-plus-lg"></i>
|
<i class="bi-plus-lg"></i>
|
||||||
Ajouter
|
Ajouter
|
||||||
</a>
|
</a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
{% if Users %}
|
{% if Users %}
|
||||||
{% for User in Users %}
|
{% for User in Users %}
|
||||||
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
<div class="card card-body my-2 py-2 bg-body-tertiary">
|
||||||
<div class="row">
|
<div class="row">
|
||||||
|
<div class="col-12 col-sm-8 col-md-9 col-xl-5 order-1">
|
||||||
<div class="col-12 col-sm-8 col-md-9 col-xl-5 order-1">
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Nom</div>
|
|
||||||
<div>
|
<div>
|
||||||
<a href="/admin/users/{{ User.ID }}"> {{ User.Name }} </a>
|
<a href="/admin/users/{{ User.ID }}"> {{ User.Name }} </a>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="col-12 col-xl-5 order-2 order-sm-3 order-xl-2">
|
<div class="col-12 col-xl-5 order-2 order-sm-3 order-xl-2">
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Email</div>
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Email</div>
|
||||||
|
<div>{{ User.Email }}</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="col order-3 order-sm-2 order-xl-3">
|
||||||
|
<div class="text-bold fs-7 mt-xxl-0 mt-2">Administrateur</div>
|
||||||
<div>
|
<div>
|
||||||
{{ User.Email }}
|
{% if User.IsAdmin %}
|
||||||
</div>
|
<span class="badge text-bg-success">Oui</span>
|
||||||
</div>
|
{% else %}
|
||||||
|
<span class="badge text-bg-danger">Non</span>
|
||||||
<div class="col order-3 order-sm-2 order-xl-3">
|
{% endif %}
|
||||||
<div class="text-bold fs-7 mt-xxl-0 mt-2">Administrateur</div>
|
</div>
|
||||||
<div>
|
</div>
|
||||||
{% if User.IsAdmin %}
|
</div>
|
||||||
<span class="badge text-bg-success">Oui</span>
|
</div>
|
||||||
{% else %}
|
{% endfor %}
|
||||||
<span class="badge text-bg-danger">Non</span>
|
|
||||||
{% endif %}
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
{% endfor %}
|
|
||||||
{% else %}
|
{% else %}
|
||||||
<div class="my-4">Pas d'utilisateurs pour le moment</div>
|
<div class="my-4">Pas d'utilisateurs pour le moment</div>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue