diff --git a/module/Formation/src/Formation/Service/Session/SessionService.php b/module/Formation/src/Formation/Service/Session/SessionService.php index c2353e1b620cf002f82a473f12d70f504a11253f..4d107be10a8c5d5e17a3e4660aa56c96b8b3f97c 100644 --- a/module/Formation/src/Formation/Service/Session/SessionService.php +++ b/module/Formation/src/Formation/Service/Session/SessionService.php @@ -14,6 +14,7 @@ use Formation\Entity\Db\Formateur; use Formation\Entity\Db\Formation; use Formation\Entity\Db\Session; use Formation\Entity\Db\Inscription; +use Formation\Provider\Etat\InscriptionEtats; use Formation\Provider\Etat\SessionEtats; use Formation\Provider\Parametre\FormationParametres; use Formation\Provider\Template\MailTemplates; @@ -511,12 +512,14 @@ class SessionService $this->getEtatInstanceService()->setEtatActif($instance, SessionEtats::ETAT_SESSION_ANNULEE); $this->update($instance); foreach ($instance->getInscriptions() as $inscrit) { - $configuration = $this->getNotificationConfigurationService()->getNotificationConfigurationWithParams("SESSION", MailTemplates::SESSION_ANNULEE, "Annulation de la session"); - if ($configuration === null OR $configuration->isActive()) $this->getNotificationService()->triggerSessionAnnulee($inscrit); - $agent = $inscrit->getAgent(); - $formation = $inscrit->getSession()->getFormation(); - $abonnement = $this->getAbonnementService()->getAbonnementByAgentAndFormation($agent, $formation); - if ($abonnement === null) $this->getAbonnementService()->ajouterAbonnement($agent, $formation); + if (!$inscrit->isEtatActif(InscriptionEtats::ETAT_DESISTEMENT AND !$inscrit->isEtatActif(InscriptionEtats::ETAT_REFUSER))) { + $configuration = $this->getNotificationConfigurationService()->getNotificationConfigurationWithParams("SESSION", MailTemplates::SESSION_ANNULEE, "Annulation de la session"); + if ($configuration === null or $configuration->isActive()) $this->getNotificationService()->triggerSessionAnnulee($inscrit); + $agent = $inscrit->getAgent(); + $formation = $inscrit->getSession()->getFormation(); + $abonnement = $this->getAbonnementService()->getAbonnementByAgentAndFormation($agent, $formation); + if ($abonnement === null) $this->getAbonnementService()->ajouterAbonnement($agent, $formation); + } } return $instance; }