diff --git a/notification.py b/notification.py index 71e63c9c4e..8f7fd88226 100644 --- a/notification.py +++ b/notification.py @@ -169,9 +169,10 @@ class Email(ModelSQL, ModelView): else: return {self._get_language(value)} - def get_email(self, record, to, cc, bcc, languages): + def get_email(self, record, from_, to, cc, bcc, languages): msg, title = _get_email_template( self.content.report_name, record, languages) + msg['From'] = from_ msg['To'] = ', '.join(to) msg['Cc'] = ', '.join(cc) msg['Bcc'] = ', '.join(bcc) @@ -226,7 +227,7 @@ class Email(ModelSQL, ModelView): languagues.update(self._get_languages(recipients_hidden)) bcc = self._get_addresses(recipients_hidden) - msg = self.get_email(record, to, cc, bcc, languagues) + msg = self.get_email(record, from_, to, cc, bcc, languagues) to_addrs = [e for _, e in getaddresses(to + cc + bcc)] if to_addrs: sendmail_transactional( diff --git a/tests/test_notification_email.py b/tests/test_notification_email.py index ed63f4cf03..598e7ccfa4 100644 --- a/tests/test_notification_email.py +++ b/tests/test_notification_email.py @@ -91,6 +91,7 @@ class NotificationEmailTestCase(ModuleTestCase): FROM, ['user@example.com'], ANY, datamanager=ANY) _, _, msg = sendmail.call_args[0] + self.assertEqual(msg['From'], FROM) self.assertEqual(msg['Subject'], 'Notification Email') self.assertEqual(msg['To'], 'Administrator ') self.assertEqual(msg.get_content_type(), 'multipart/alternative')