mirror of https://github.com/OCA/social.git
56 lines
2.3 KiB
Python
56 lines
2.3 KiB
Python
# Copyright 2018 Therp BV <https://therp.nl>
|
|
# Copyright 2022 Hunki Enterprises BV <https://hunki-enterprises.com>
|
|
# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl.html).
|
|
from odoo import api, models
|
|
|
|
|
|
class IrMailServer(models.Model):
|
|
_inherit = 'ir.mail_server'
|
|
|
|
@api.model
|
|
def send_email(
|
|
self, message, mail_server_id=None, smtp_server=None, smtp_port=None,
|
|
smtp_user=None, smtp_password=None, smtp_encryption=None,
|
|
smtp_debug=False, smtp_session=None,
|
|
):
|
|
""" Inject autogenerated header for autogoing mails """
|
|
|
|
if not self.env.context.get('mail_autogenerated_header_disable') and\
|
|
self._send_email_set_autogenerated(
|
|
message, mail_server_id=mail_server_id,
|
|
smtp_server=smtp_server, smtp_port=smtp_port,
|
|
smtp_user=smtp_user, smtp_password=smtp_password,
|
|
smtp_encryption=smtp_encryption, smtp_debug=smtp_debug,
|
|
smtp_session=smtp_session,
|
|
):
|
|
# MS Exchange's broken version as of
|
|
# http://blogs.technet.com/b/exchange/archive/2006/10/06/
|
|
# 3395024.aspx
|
|
message['Precedence'] = 'bulk'
|
|
message['X-Auto-Response-Suppress'] = 'OOF'
|
|
# The right way to do it as of
|
|
# https://tools.ietf.org/html/rfc3834
|
|
message['Auto-Submitted'] = 'auto-generated'
|
|
|
|
return super(IrMailServer, self).send_email(
|
|
message, mail_server_id=mail_server_id, smtp_server=smtp_server,
|
|
smtp_port=smtp_port, smtp_user=smtp_user,
|
|
smtp_password=smtp_password, smtp_encryption=smtp_encryption,
|
|
smtp_debug=smtp_debug, smtp_session=smtp_session,
|
|
)
|
|
|
|
@api.model
|
|
def _send_email_set_autogenerated(
|
|
self, message, mail_server_id=None, smtp_server=None, smtp_port=None,
|
|
smtp_user=None, smtp_password=None, smtp_encryption=None,
|
|
smtp_debug=False, smtp_session=None,
|
|
):
|
|
"""Determine if some mail should have the autogenerated headers"""
|
|
|
|
mail = self.env['mail.mail'].search([
|
|
('message_id', '=', message['Message-Id']),
|
|
])
|
|
if not mail:
|
|
return False
|
|
return mail.subtype_id != self.env.ref('mail.mt_comment')
|