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")