Bonjour Patrick,
Avant de proposer une modification de code, je teste. J'avais vérifié que tout se passe bien si on modifie la date et c'est le cas : l'événement n'est pas créé en double et vient s'afficher à la nouvelle date dans le calendrier.
Je n'avais pas vérifié si on supprime le devoir, et je viens de le faire : les deux événements date de remise et date limite n'apparaissent plus dans le calendrier. Si on restaure le devoir, ni la date de remise ni la date limite ne réapparaissent; il faut retourner sur la page des paramètres et enregistrer pour que les événements réapparaissent dans le calendrier.
Le code utilisé pour créer et gérer l'événement ASSIGN_EVENT_TYPE_CLOSE est une copie de celui de l'événement ASSIGN_EVENT_TYPE_DUE (date de remise). Il semble bien d'après les tests qu'ils se comportent de la même façon.
Christian