From fab09473a1cfd7447426f49d073a594ff0b04a9d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Valentin=20Mogu=C3=A9rou?= Date: Sat, 20 Apr 2024 13:50:34 +0200 Subject: [PATCH] unique dummy email addresses for ical --- colloscope/icalexport.py | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/colloscope/icalexport.py b/colloscope/icalexport.py index 355b116..a2ad358 100644 --- a/colloscope/icalexport.py +++ b/colloscope/icalexport.py @@ -5,6 +5,16 @@ from icalendar import Calendar, Event, vCalAddress, vText from colloscope.models import * +def emailize(nom, prenom=None): + if prenom is not None: + return "{}.{}@example.com" \ + .format( + prenom.replace(" ", "_").lower(), + nom.replace(" ", "_").lower() + ) + else: + return "{}@example.com" \ + .format(nom.replace(" ", "_").lower()) def to_calendar(etudiant, periode): cal = Calendar() @@ -33,13 +43,13 @@ def to_calendar(etudiant, periode): event.add("location", f"{rotation.creneau.salle} ({rotation.creneau.periode.classe.lycee})") event.add("matiere", str(rotation.creneau.matiere)) - organizer = vCalAddress("mailto:unknown@mp2i-vms.fr") + organizer = vCalAddress(f"mailto:{emailize(rotation.creneau.colleur.nom)}") organizer.params["cn"] = vText(str(rotation.creneau.colleur)) organizer.params["role"] = vText("Colleur") event.add("organizer", organizer) for e in rotation.groupe_effectif(): - attendee = vCalAddress("mailto:unknown@mp2i-vms.fr") + attendee = vCalAddress("mailto:{emailize(e.nom, prenom=e.prenom)}") attendee.params["cn"] = vText(str(e)) attendee.params["role"] = vText("Etudiant")