Salut,
Le 15/02/2020 à 17:05, Nicolas Béhier-Dévigne a écrit :
Bonjour,
J'ai trois problématiques que je souhaiterai pouvoir résoudre :
1. Lorsqu'un utilisateur crée son compte sur Galette, nous devons
l'associer manuellement à un groupe précis (nous avons crée en
interne un groupe |sympatisant|) ;
2. Lorsqu'un utilisateur créé son compte sur Galette, et s'il a cocher
"Recevoir la newsletter" (champs dynamique), je souhaite l'ajouter à
notre site internet principal (c'est à partir de celui-ci que nous
envoyons les newsletters) ;
3. Lorsqu'un utilisateur est modifié (par lui ou admin), et que le
champs dynamique "Recevoir la newsletter" est modifié, je souhaite
mettre à jour mon site internet principal.
Pour réaliser cela, je souhaiterai développer un plugin, qui écouterai
un événement lancé par le core de galette à chaque fois que l'entité
adhérent est modifiée. Cela me permettrai ensuite d'analyser l'adhérent,
et le cas échéant de réaliser un |POST| vers une API de mon site
principal pour qu'il réalise ou non une opération ou associer mon
adhérent à un groupe.
En parcourant rapidement le code de Galette, je n'ai pas l'impression
que de tels événements soient disponibles actuellement. Avez-vous une
piste à m'indiquer pour m'aider à développer mon plugin ?
Non, il n'y a rien de tel qui existe dans Galette pour les adhérents.
Debian France avait subventionné le développement d'un appel sur une URL
externe à l'ajout de contributions (pour faire le lien avec leur
logiciel de compta me semble-t'il). Je ne pense pas que ce soit
transposable ; mais une solution similaire devrait être possible.
S'il est techniquement possible d'ajouter un évènement/écouteur/whatever
je n'ai pas vraiment d'idée sur la manière d'implémenter ça dans Galette
; et il n'y a pas vraiment de besoin (cette question n'a jamais été
abordée auparavant). Ça me semble trop de travail, et difficile à
généraliser.
Autre chose, Galette vérifie les données envoyées à l'enregistrement
d'un adhérent, mais pas si elles ont changé. Il n'est donc pas possible
de savoir si un champ a changé de valeur, on peut juste obtenir la
valeur actuelle.
En résumé, il semble actuellement assez improbable que tu parviennes à
ce que tu veux via cette approche ; et il faudrait adapter Galette dans
tous les cas...
Tu peux essayer de voir à ajouter ce qui pourrait te servir, et proposer
un patch si tu le souhaites ; on verra si la solution proposée peut être
intégrée, et son intérêt.
Quant à moi, j'ai pas mal d'autres choses à développer déjà, je n'ai pas
prévu de passer du temps là dessus :)
++
--
Johan
--
Galette development - http://galette.eu/
List documentation: https://listengine.tuxfamily.org/lists.galette.eu/devel/