From 646231ba840bac08d0393b11f74f020053cec870 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jean-S=C3=A9bastien=20Caux?= <git@jscaux.org> Date: Thu, 25 Apr 2024 17:36:55 +0200 Subject: [PATCH] Debug `MailEngine` default arguments --- scipost_django/mails/core.py | 7 ++++--- scipost_django/mails/forms.py | 6 ++++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/scipost_django/mails/core.py b/scipost_django/mails/core.py index 7ece3c069..1225035c5 100644 --- a/scipost_django/mails/core.py +++ b/scipost_django/mails/core.py @@ -39,9 +39,9 @@ class MailEngine: self, mail_code, subject="", - recipient_list=[], - cc=[], - bcc=[], + recipient_list=None, + cc=None, + bcc=None, from_email="", from_name="", **kwargs, @@ -62,6 +62,7 @@ class MailEngine: -- from_email (str, optional): Plain email address. -- from_name (str, optional): Display name for from address. """ + self.mail_code = mail_code self.extra_config = { "cc": cc, diff --git a/scipost_django/mails/forms.py b/scipost_django/mails/forms.py index af8ef8f9e..21f77127f 100644 --- a/scipost_django/mails/forms.py +++ b/scipost_django/mails/forms.py @@ -28,7 +28,6 @@ class EmailForm(forms.Form): def __init__(self, *args, **kwargs): self.mail_code = kwargs.pop("mail_code") - # Check if all exta configurations are valid. self.extra_config.update(kwargs.pop("mail_config", {})) @@ -82,7 +81,10 @@ class EmailForm(forms.Form): self.engine.render_template(self.cleaned_data["text"]) self.engine.mail_data["subject"] = self.cleaned_data["subject"] if cc_mail_str := self.cleaned_data["cc_mail_field"]: - self.engine.mail_data["cc"] += [m.strip() for m in cc_mail_str.split(",")] + if self.engine.mail_data["cc"]: + self.engine.mail_data["cc"] += [m.strip() for m in cc_mail_str.split(",")] + else: + self.engine.mail_data["cc"] = [m.strip() for m in cc_mail_str.split(",")] if bcc_mail_str := self.cleaned_data["bcc_mail_field"]: self.engine.mail_data["bcc"] += [m.strip() for m in bcc_mail_str.split(",")] self.engine.send_mail() -- GitLab