diff --git a/common/utils.py b/common/utils.py index a5cc8ad12a01b0378814043110b64404d7744483..4a778d1002428a3cd1c2da6823a7c137df54f39c 100644 --- a/common/utils.py +++ b/common/utils.py @@ -13,7 +13,7 @@ class BaseMailUtil(object): for var_name in _dict: setattr(cls, var_name, _dict[var_name]) - def _send_mail(cls, template_name, recipients, subject): + def _send_mail(cls, template_name, recipients, subject, extra_bcc=None): """ Call this method from a classmethod to send emails. The template will have context variables defined appended from the `load` method. @@ -30,12 +30,15 @@ class BaseMailUtil(object): html_template = loader.get_template('email/%s_html.html' % template_name) message = template.render(Context(cls._context)) html_message = html_template.render(Context(cls._context)) + bcc_list = [cls.mail_sender] + if extra_bcc: + bcc_list += extra_bcc email = EmailMultiAlternatives( 'SciPost: ' + subject, # message, message, '%s <%s>' % (cls.mail_sender_title, cls.mail_sender), recipients, - bcc=[cls.mail_sender], + bcc=bcc_list, reply_to=[cls.mail_sender]) email.attach_alternative(html_message, 'text/html') email.send(fail_silently=False) diff --git a/submissions/utils.py b/submissions/utils.py index 425364b5a4a78bbc6bed406b2a20b882140e49ed..fb2039cc6df596f19c5dbce7b37985c794f9ee11 100644 --- a/submissions/utils.py +++ b/submissions/utils.py @@ -283,9 +283,11 @@ class SubmissionUtils(BaseMailUtil): Requires context to contain: - `invitation` """ + extra_bcc_list = [cls._context['invitation'].submission.editor_in_charge.user.email] cls._send_mail(cls, 'submission_cycle_reinvite_referee', [cls._context['invitation'].email_address], - 'Invitation on resubmission') + 'Invitation on resubmission', + extra_bcc=extra_bcc_list) @classmethod