From 210c6e25836d9ec13683464e156c434fe7064fda Mon Sep 17 00:00:00 2001 From: Alexis de Lattre Date: Wed, 13 Dec 2017 19:14:08 +0100 Subject: [PATCH] Backport module base_mail_sender_bcc from v10 to v8 --- base_mail_sender_bcc/__init__.py | 3 +++ base_mail_sender_bcc/__openerp__.py | 22 ++++++++++++++++++++ base_mail_sender_bcc/ir_mail_server.py | 28 ++++++++++++++++++++++++++ 3 files changed, 53 insertions(+) create mode 100644 base_mail_sender_bcc/__init__.py create mode 100644 base_mail_sender_bcc/__openerp__.py create mode 100644 base_mail_sender_bcc/ir_mail_server.py diff --git a/base_mail_sender_bcc/__init__.py b/base_mail_sender_bcc/__init__.py new file mode 100644 index 0000000..12de301 --- /dev/null +++ b/base_mail_sender_bcc/__init__.py @@ -0,0 +1,3 @@ +# -*- coding: utf-8 -*- + +from . import ir_mail_server diff --git a/base_mail_sender_bcc/__openerp__.py b/base_mail_sender_bcc/__openerp__.py new file mode 100644 index 0000000..4532237 --- /dev/null +++ b/base_mail_sender_bcc/__openerp__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +# © 2017 Akretion (http://www.akretion.com) +# @author Alexis de Lattre +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +{ + 'name': 'Mail Sender Bcc', + 'version': '8.0.1.0.0', + 'category': 'Mail', + 'license': 'AGPL-3', + 'summary': "Always send a copy of the mail to the sender", + 'description': """ +Mail Sender Bcc +=============== + +With this module, when Odoo sends an outgoing email, it adds the sender as Bcc (blind copy) of the email. + """, + 'author': 'Akretion', + 'website': 'http://www.akretion.com', + 'depends': ['base'], + 'installable': True, +} diff --git a/base_mail_sender_bcc/ir_mail_server.py b/base_mail_sender_bcc/ir_mail_server.py new file mode 100644 index 0000000..65ec83a --- /dev/null +++ b/base_mail_sender_bcc/ir_mail_server.py @@ -0,0 +1,28 @@ +# -*- coding: utf-8 -*- +# © 2017 Akretion (Alexis de Lattre ) +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from openerp import models + + +class IrMailServer(models.Model): + _inherit = 'ir.mail_server' + + def build_email( + self, email_from, email_to, subject, body, email_cc=None, + email_bcc=None, reply_to=False, attachments=None, + message_id=None, references=None, object_id=False, + subtype='plain', headers=None, + body_alternative=None, subtype_alternative='plain'): + if email_from: + if email_bcc is None: + email_bcc = [email_from] + elif isinstance(email_bcc, list) and email_from not in email_bcc: + email_bcc.append(email_from) + return super(IrMailServer, self).build_email( + email_from, email_to, subject, body, email_cc=email_cc, + email_bcc=email_bcc, reply_to=reply_to, attachments=attachments, + message_id=message_id, references=references, object_id=object_id, + subtype=subtype, headers=headers, + body_alternative=body_alternative, + subtype_alternative=subtype_alternative)