Re: [Galette-devel] Les plugins peuvent-ils étendre le comportement de Galette |
[ Thread Index |
Date Index
| More lists.galette.eu/devel Archives
]
- To: devel@xxxxxxxxxxxxxxxx
- Subject: Re: [Galette-devel] Les plugins peuvent-ils étendre le comportement de Galette
- From: Johan Cwiklinski <johan@xxxxxxxx>
- Date: Mon, 17 Feb 2020 10:05:39 +0100
Salut Nicolas,
Le 17/02/2020 à 08:33, Nicolas Béhier-Dévigne a écrit :
* Pour la migration vers Slim4, je ne pense pas que ce soit un gros
sujet, car il semble que seul l'appel au container sera à revoir
(l'event dispatcher est utilisé en injection de dépendance).
Oui, de toutes façons, il y a beaucoup d'autres choses qui bloquent, et
qui sont bien pires (au niveau de la DI justement) :/
* Pour la compatibilité PHP7.4, je vais vérifier ce soir. Pour le
moment je n'ai testé qu'en 7.2.
Super, merci :) Du coup, si ça passe en 7.2 et en 7.4, je vote pour
ignorer royalement l'avertissement de l'auteur :D
* Pour le déclenchement, au départ je souhaitais les déclencher depuis
la méthode store de l'entité Adhérent (je suis d'accord avec toi, ce
serait plus logique), mais sauf erreur de ma part, je n'ai plus
accès à l'application Slim à ce moment-là, c'est pour ça que j'ai
pris le raccourci en l'ajoutant à la route. Je pense rester à cet
endroit sauf si tu m'indiques comment l'intégrer aux Entity.
Tu as raison, on a pas accès à l'app, ni à quoi que ce soit en fait
depuis les objets de Galette d'une manière générale.
Sans injection de dépendance (c'est assez récent dans l'histoire de
Galette), il était difficile de faire quelque chose de vraiment correct.
La plupart du temps, les dépendances sont passées dans les
constructeurs, mais c'est hyper contraignant...
J'ai commencé à bosser sur une branche d'intégration de PHP-DI (pimple,
utilisé par Slim3 n'étant plus maintenu) avec laquelle j'espère
améliorer un peu tout cela (il me semble qu'il y a une PR sur github si
ça t'intéresse).
Ce qu'il faut retenir, c'est surtout que je n'ai pas vraiment de
solution - en dehors de l'utilisation de globals - à l'heure actuelle :(
Donc, bon, je pense qu'une mauvaise solution technique sera toujours
mieux qu'une "mauvaise" logique : partons si ça te va sur le
déclenchement des évènements depuis l’objet adhérent (puis quand j'aurai
enfin la motivation pour créer une classe abstraite pour les entity, on
pourra généraliser plus facilement), et utilise un global (ce ne sera
pas la premier de cette classe de toutes façons) ;)
* Je ne suis pas très à l'aise avec les tests, d'autant plus qu'ils
devraient toucher les plugins et des événements asynchrones... Je
regarderai si j'arrive à en ajouter, mais je ne promets rien ;-)
Pas de soucis, ça, je m'en chargerai ;) C'était vraiment pour souligner
que depuis les routes, ce ne serait de toutes façons pas possible :)
Je devrai pouvoir te faire un Pull-Request d'ici la fin de semaine.
Top, merci :)
Bonne semaine,
Pareil !
--
Johan
--
Galette development - http://galette.eu/
List documentation: https://listengine.tuxfamily.org/lists.galette.eu/devel/