Changes to "Roadmap" between 2022-04-03 17:30:04 and 2022-04-03 17:38:49

81
82
83
84
85
86
87





88
89
90
91
92

93

94

95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138

139
140
141
142
143
144
145
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100

101
102

103



104
105

106

107








108
109
110




111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126

127
128
129
130
131
132
133
134







+
+
+
+
+





+

+
-
+

-

-
-
-


-

-

-
-
-
-
-
-
-
-



-
-
-
-
















-
+







* La table `recherches` a été renommée `searches` et ses colonnes ont aussi été renommées en anglais
* La table `plugins_signaux` a été renommée `plugins_signals` et ses colonnes ont aussi été renommées en anglais
* Une table `logs` contenant un journal des actions utilisateur a été créée

Membres :

* Refonte du code de la gestion des membres
* Refonte de la modification des fiches de membre :
  * possibilité de ré-ordonner les champs dans les fiches par drag-and-drop
  * on peut définir la valeur par défaut d'un champ membre [](725e75351d4de624245b2ff80b49544f548604db) 
  * simplification : champ privé / champ caché deviennent modification / visibilité par administrateurs ou par le membre
  * nouveau type de champ : mois et année
* Améliorations recherche :
  * affichage du nombre de résultats
  * tri par colonne
  * pagination
  * possibilité de sélectionner des colonnes à afficher dans le résultat
* On peut désormais avoir plusieurs adresses email par fiche membre [](97c2d18bbc), chaque adresse recevra les messages envoyés

À faire :
* Transformer la colonne "date_inscription" dans la table membres en champ personnalisable [](cd231f37a5)

* Date de modification d'une fiche membre [](eb40b2de1)
* Pouvoir avoir plusieurs adresses email par fiche membre [](97c2d18bbc)
* Indique le nombre de membres par catégories dans la partie membres [](47aaac6782)

Recherche membres :

* Recherche avancée de membres : ajouter un champ pour lister à jour/ou pas de cotisation [](97c2d18bbc)
* export exact de la recherche, pas juste les données des membres [](96b5948264ab2a3b8937fa9d205738bfd87068b4)
* Compter le nombre de résultats de la recherche [](722961d3712113cddff5) et pagination
* afficher dans la recherche avancée le nom de la catégorie, pas son ID

* Possibilité de chercher en lien avec les activités

Champs membres :

* pouvoir définir la valeur par défaut d'un champ membre [](725e75351d4de624245b2ff80b49544f548604db) 
* Dans les réglages de champs, modifiable/obligatoire/privé à revoir [](294f0496fb)

Import membres :

* Import de membres : afficher toutes les erreurs d'un coup [](928c70ca27)
* possibilité d'importer la catégorie du membre depuis un CSV, cf. <https://fossil.kd2.org/garradin/tktview?name=8136fedb24>

Activités :

* Possibilité d'inscrire plusieurs membres à une activité/tarif d'un coup dans la liste des membres, cf. [](05f066665f)

Webmasters :

* La constante de configuration `PREFER_HTTPS` a été supprimée, la définir n'a plus d'effet. Si vous n'êtes pas encore 100% en HTTPS, utilisez une redirection d'URL via le serveur web.

Plugins :

* **Important :** dans le fichier `garradin_plugin.ini` de chaque plugin, renommer `nom` en `name` et `auteur` en `author`
* suppression du signal `membre.nouveau`, utiliser `entity.Users\User.save.after` à la place
* suppression du signal `membre.suppression` utiliser `entity.Users\User.delete.after` à la place
* suppression du signal `rappels.auto`
* le signal `email.envoi` est renommé `email.send`
* le signal `motdepasse.compromis` est renommé `password.compromised`

Développeurs⋅ses :

* La classe `Membres` disparaît et est remplacée dans ses fonctionnalités par `Users\Users`
* La classe `Recherche` est renommée
* La classe `Recherche` est séparée en plusieurs : une entité `Search` représentant les recherches enregistrées, et des classes `AdvancedSearch` pour le formulaire de recherche avancée
* La classe `Membres\Champs` disparaît, ses fonctionnalités sont dans la classe `Users\DynamicFields`
* La classe `Membres\Session` est renommée `Users\Session`
* Une entité `Users\User` a été créée pour représenter un membre
* Les propriétés de la classe `Config` ont été renommées en anglais, notamment `nom_asso`, `email_asso`, etc. qui deviennent `org_name`, `org_email` etc.

### Version 1.4 — Amélioration site web