Bug sur les CiviRules (notamment en cas de «days after creation = 0»
Les CiviRules sont des triggers de type Cron pour éviter des problèmes de droits (le user API n'a aucun droit, il ne peut pas accéder au contact). J'ai été contraint de développer une table CampagnodonCivirulesLog, dans laquelle je note les transactions déjà traitées.
Bug: j'insère dans cette table AVANT le test des conditions Civirules. Si on est en «days after creation = 0», ce n'est donc pas fiable.
Exemple: on veut un mail «merci pour votre don» quand un don est payé.
- si la transaction est crée à 17:59:50,
- elle va être ajoutée dans CampagnodonCivirulesLog à 18:00:00
- si je paie à 18:00:40, la civirule ne sera plus testée.
Il faudrait - à minima - documenter le fait qu'il n'est pas fiable de mettre days after creation à 0.
NB: dans tous les cas, on pourrait avoir des bugs sur le statut de la transaction change autour de minuit. Mais ce cas devrait être plutôt rare.