From 3158736579864067cac3792a0694fd2b5021db1f Mon Sep 17 00:00:00 2001 From: Peter Bieringer Date: Fri, 10 Apr 2026 08:34:28 +0200 Subject: [PATCH] hook/email: fix body in case of mass-email is active but only one attendee --- radicale/hook/email/__init__.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/radicale/hook/email/__init__.py b/radicale/hook/email/__init__.py index 11540e8e..0602e416 100644 --- a/radicale/hook/email/__init__.py +++ b/radicale/hook/email/__init__.py @@ -772,10 +772,18 @@ class EmailConfig: """ if self.send_mass_emails: # If mass emails are enabled, we send one email to all attendees - body = template.build_message(event=event, from_email=self.from_email, - mass_email=self.send_mass_emails, attendee=None) - subject = template.build_subject(event=event, from_email=self.from_email, - mass_email=self.send_mass_emails, attendee=None) + if len(attendees) == 1: + # only one attendee + logger.trace("send_mass_emails=True but only 1 attendee, fallback to non-mass") + body = template.build_message(event=event, from_email=self.from_email, + mass_email=False, attendee=attendees[0]) + subject = template.build_subject(event=event, from_email=self.from_email, + mass_email=False, attendee=attendees[0]) + else: + body = template.build_message(event=event, from_email=self.from_email, + mass_email=self.send_mass_emails, attendee=None) + subject = template.build_subject(event=event, from_email=self.from_email, + mass_email=self.send_mass_emails, attendee=None) return self._send_email(subject=subject, body=body, attendees=attendees, ics_attachment=ics_attachment) else: