Des notifications en doubles en veux-tu en voila
Le plugin souffre d'un petit soucis embêtant lié à la façon dont il est conçu :
- pour chaque notification la fonction
notifavancees_notifications()
pousse dans la queue des consigne du genre "Notification (commande, 123) pour le mode mail et email@example.org" liée au changement de statut de la commande. - mais la tache dans la queue est juste un trigger pour calculer la notifications
- si j'ai une commande qui passe en statut "payée" puis à la suite "envoyée" parce que c'est un produit numérique qui est envoyé automatiqumeent, cela provoque 2 mises en queue de cet evenement
- mais comme le calcul du contenu de la notification est asynchrone, donc calculé plus tard, les 2 notifications pour les 2 status produisent un même résultat qui est celui du statut de la commande au moment de leur calcul, car elle est déjà envoyée quand la job_queue prend la main
- résultat : 2 emails identiques qui disent que la commande a été envoyée...
Ça marche bien si jamais le paiement et l'envoi sont séparés dans le temps, et je ne veux pas désactiver l'une des 2 notifications car si l'utilisateur commande un livre je veux qu'il reçoive les 2 mails (lors du paiement puis lors de l'envoi).
Même pour un produit numérique il pourrait être mieux que l'utilisateur reçoive les 2 notifications, même si elles se suivent, mais on pourrait vivre avec une seule. Par contre recevoir la même notification en double, pour le client ET pour le vendeur, c'est vite bien pénible