diff --git a/app/models/formsemestre.py b/app/models/formsemestre.py
index f8c4638d93e88ce8c7f60e59b86c1dda25bff843..1353bfea466f6604d7537cda09aad5bcc9c70166 100644
--- a/app/models/formsemestre.py
+++ b/app/models/formsemestre.py
@@ -1192,6 +1192,26 @@ class FormSemestre(models.ScoDocModel):
             "[ScoDoc] " + subject, email.get_from_addr(), destinations, txt
         )
 
+    def _notify_demission(self, etud: Identite) -> None:
+        "Notifie la démission d'un étudiant: envoie un mail selon paramétrage"
+        destinations = (
+            sco_preferences.get_preference("emails_notifications_demissions", self.id)
+            or ""
+        )
+        destinations = [x.strip() for x in destinations.split(",")]
+        destinations = [x for x in destinations if x]
+        if not destinations:
+            return
+        txt = f"""{etud.nom_prenom()} a démissionné {etud.e} en {self.titre_annee()}"""
+        subject = f"""Démission de {etud.nom_prenom()} en {self.titre_annee()}"""
+        # build mail
+        log(f"_notify_demission: sending notification to {destinations}")
+        log(f"_notify_demission: subject: {subject}")
+        log(txt)
+        email.send_email(
+            "[ScoDoc] " + subject, email.get_from_addr(), destinations, txt
+        )
+
     def get_partitions_list(
         self, with_default=True, only_listed=False
     ) -> list[Partition]: