Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

18.0 mig mail outbound static #1564

Draft
wants to merge 44 commits into
base: 18.0
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
8767f35
ADD mail_outbound_static: Allow configuration of from email header
lasley May 24, 2019
6e01193
Port mail_outbound_static to 12.0
eLBati May 24, 2019
b527b12
Update website in mail_outbound_static/__manifest__.py
eLBati Sep 11, 2019
3cb4bea
[UPD] Update mail_outbound_static.pot
oca-travis Sep 11, 2019
ec8c2e0
[UPD] README.rst
OCA-git-bot Sep 11, 2019
6fab726
[MIG] mail_outbound_static: Migration to 13.0
BT-fgarbely Jun 30, 2020
cb9271f
[IMP] mail_outbound_static: black, isort, prettier
BT-fgarbely Jun 30, 2020
fde07f3
[UPD] Update mail_outbound_static.pot
oca-travis Jul 29, 2020
9852ee1
[UPD] README.rst
OCA-git-bot Jul 29, 2020
dfafe7e
[FIX] 13.0 mail_outbound_static
eLBati Jul 22, 2020
69baa3f
mail_outbound_static 13.0.1.0.1
OCA-git-bot Jul 29, 2020
b7abc69
[MIG] mail_outbound_static: Migration to 14.0
pierre-pizzetta Dec 7, 2020
d95d581
[UPD] Update mail_outbound_static.pot
oca-travis May 7, 2021
e94ebe4
mail_outbound_static: Domain whitelist based logic.
zaoral Aug 25, 2020
27e7dc3
new changes to squash after review:
zaoral Sep 4, 2020
2b9a30a
[14.0][FIX] mail_outbound_static: Apply pre-commit
rousseldenis Jan 19, 2022
0bb29db
[IMP] mail_outbound_static: black, isort, prettier
yankinmax Jan 26, 2022
1df9ce3
[MIG] mail_outbound_static: Migration to 15.0
yankinmax Jan 26, 2022
80526d8
[IMP] mail_outbound_static: pylint
yankinmax Jan 26, 2022
50f67c0
fixup! [MIG] mail_outbound_static: Migration to 15.0
yankinmax Jan 27, 2022
78db98e
[UPD] Update mail_outbound_static.pot
Mar 3, 2022
2c2c44c
[FIX] mail_outbound_static: Remove warning
victoralmau Oct 19, 2022
22ea861
[MIG] mail_outbound_static: Migration to 16.0
dreispt Jan 2, 2023
474ddef
[UPD] Update mail_outbound_static.pot
Mar 20, 2023
14f68b2
[UPD] README.rst
OCA-git-bot Mar 20, 2023
c225c46
[FIX] Move smtp info update logic to _prepare_email_message()
yostashiro Jan 29, 2023
a2384b7
Align maximum length of TLD to DNS limit (63 chars)
are-agilebg Apr 4, 2023
a85eb0c
[UPD] README.rst
OCA-git-bot Apr 18, 2023
ad82110
mail_outbound_static 16.0.1.0.1
OCA-git-bot Apr 18, 2023
1c0d1b4
[UPD] README.rst
OCA-git-bot Sep 3, 2023
f762ad5
[BOT] post-merge updates
OCA-git-bot Oct 5, 2023
806be21
Update translation files
weblate Oct 9, 2023
82c175a
[IMP] mail_outbound_static: pre-commit auto fixes
SodexisTeam Nov 21, 2023
1719587
[MIG] mail_outbound_static: Migration to 17.0
SodexisTeam Dec 14, 2023
06d1231
[UPD] Update mail_outbound_static.pot
Dec 28, 2023
a35f69d
[BOT] post-merge updates
OCA-git-bot Dec 28, 2023
76e2e2e
Added translation using Weblate (Italian)
mymage Feb 4, 2024
e7a8b98
Translated using Weblate (Italian)
mymage Feb 4, 2024
cd9bd8b
[UPD] copier version 1.20
Mar 7, 2024
8310872
[BOT] post-merge updates
OCA-git-bot Mar 25, 2024
b96b9e6
[IMP] mail_outbound_static: pre-commit auto fixes
SodexisTeam Nov 21, 2023
c8fe61d
[BOT] post-merge updates
OCA-git-bot May 6, 2024
cc96dc2
[IMP] : pre-commit auto fixes
matteoopenf Jan 29, 2025
1e66074
[fix] mail_outbound_static fix pre-commit errore
matteoopenf Jan 29, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
122 changes: 122 additions & 0 deletions mail_outbound_static/README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,122 @@
====================
Mail Outbound Static
====================

..
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! source digest: sha256:51d25f22970569d2c95b0ea4b79c6a3b9aad9e27c05e8f2a8f53f87e71be5daa
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

.. |badge1| image:: https://img.shields.io/badge/maturity-Beta-yellow.png
:target: https://odoo-community.org/page/development-status
:alt: Beta
.. |badge2| image:: https://img.shields.io/badge/licence-LGPL--3-blue.png
:target: http://www.gnu.org/licenses/lgpl-3.0-standalone.html
:alt: License: LGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsocial-lightgray.png?logo=github
:target: https://github.com/OCA/social/tree/18.0/mail_outbound_static
:alt: OCA/social
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/social-18-0/social-18-0-mail_outbound_static
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runboat-Try%20me-875A7B.png
:target: https://runboat.odoo-community.org/builds?repo=OCA/social&target_branch=18.0
:alt: Try me on Runboat

|badge1| |badge2| |badge3| |badge4| |badge5|

This module brings Odoo outbound emails in to strict compliance with
RFC-2822 by allowing for a dynamically configured From header, with the
sender's e-mail being appended into the proper Sender header instead. To
accomplish this we:

- Add a domain whitelist field in the mail server model. This one
represent an allowed Domains list separated by commas. If there is not
given SMTP server it will let us to search the proper mail server to
be used to send the messages where the message 'From' email domain
match with the domain whitelist. If there is not mail server that
matches then will use the default mail server to send the message.
- Add a Email From field that will let us to email from a specific
address taking into account this conditions:

1) If the sender domain match with the domain whitelist then the
original message's 'From' will remain as it is and will not be
changed because the mail server is able to send in the name of the
sender domain.
2) If the original message's 'From' does not match with the domain
whitelist then the email From is replaced with the Email From field
value.

- Add compatibility to define the smtp information in Odoo config file.
Both smtp_from and smtp_whitelist_domain values will be used if there
is not mail server configured in the system.

**Table of contents**

.. contents::
:local:

Usage
=====

- Navigate to an Outbound Email Server
- Set the Email From option to an email address
- Set the Domain Whitelist option with the domain whitelist

Known issues / Roadmap
======================



Bug Tracker
===========

Bugs are tracked on `GitHub Issues <https://github.com/OCA/social/issues>`_.
In case of trouble, please check there if your issue has already been reported.
If you spotted it first, help us to smash it by providing a detailed and welcomed
`feedback <https://github.com/OCA/social/issues/new?body=module:%20mail_outbound_static%0Aversion:%2018.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.

Do not contact contributors directly about support or help with technical issues.

Credits
=======

Authors
-------

* brain-tec AG
* LasLabs
* Adhoc SA

Contributors
------------

- Frédéric Garbely <[email protected]>
- Dave Lasley <[email protected]>
- Lorenzo Battistini <https://github.com/eLBati>
- Pierre Pizzetta <[email protected]>
- Katherine Zaoral <[email protected]>
- Juan José Scarafía <[email protected]>
- `Quartile <https://www.quartile.co>`__:

- Yoshi Tashiro

Maintainers
-----------

This module is maintained by the OCA.

.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org

OCA, or the Odoo Community Association, is a nonprofit organization whose
mission is to support the collaborative development of Odoo features and
promote its widespread use.

This module is part of the `OCA/social <https://github.com/OCA/social/tree/18.0/mail_outbound_static>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
4 changes: 4 additions & 0 deletions mail_outbound_static/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Copyright 2017 LasLabs Inc.
# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html).

from . import models
16 changes: 16 additions & 0 deletions mail_outbound_static/__manifest__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Copyright 2016-2022 LasLabs Inc.
# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html).

{
"name": "Mail Outbound Static",
"summary": "Allows you to configure the from header for a mail server.",
"version": "18.0.1.0.0",
"category": "Discuss",
"website": "https://github.com/OCA/social",
"author": "brain-tec AG, LasLabs, Adhoc SA, Odoo Community Association (OCA)",
"license": "LGPL-3",
"application": False,
"installable": True,
"depends": ["base"],
"data": ["views/ir_mail_server_view.xml"],
}
76 changes: 76 additions & 0 deletions mail_outbound_static/i18n/es.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_outbound_static
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 13.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2020-09-03 12:53+0000\n"
"PO-Revision-Date: 2020-09-03 12:53+0000\n"
"Last-Translator: \n"
"Language-Team: \n"
"Language: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: mail_outbound_static
#. odoo-python
#: code:addons/mail_outbound_static/models/ir_mail_server.py:0
#, python-format
msgid ""
"%s is not a valid domain. Please define a list of valid domains separated by "
"comma"
msgstr ""
"%s no es un dominio válido. Por favor defina una lista de dominios validos "
"separados por comas"

#. module: mail_outbound_static
#: model:ir.model.fields,help:mail_outbound_static.field_ir_mail_server__domain_whitelist
msgid ""
"Allowed Domains list separated by commas. If there is not given SMTP server "
"it will let us to search the proper mail server to be used to sent the "
"messages where the message 'From' email domain match with the domain "
"whitelist."
msgstr ""
"Lista de dominios permitidos separados por comas. Si no se ha seleccionado "
"un servidor SMTP nos permitirá seleccionar el servidor de mail apropiado "
"para enviar los mensajes donde el dominio del email del 'De' coincida con la "
"lista blanca de dominios."

#. module: mail_outbound_static
#: model:ir.model.fields,field_description:mail_outbound_static.field_ir_mail_server__domain_whitelist
msgid "Domain Whitelist"
msgstr "Lista blanca de dominios"

#. module: mail_outbound_static
#: model:ir.model.fields,field_description:mail_outbound_static.field_ir_mail_server__smtp_from
msgid "Email From"
msgstr "Email De"

#. module: mail_outbound_static
#: model:ir.model,name:mail_outbound_static.model_ir_mail_server
msgid "Mail Server"
msgstr "Servidor de correo"

#. module: mail_outbound_static
#. odoo-python
#: code:addons/mail_outbound_static/models/ir_mail_server.py:0
#, python-format
msgid "Not a valid Email From"
msgstr "No es un Email De válido"

#. module: mail_outbound_static
#: model:ir.model.fields,help:mail_outbound_static.field_ir_mail_server__smtp_from
msgid ""
"Set this in order to email from a specific address. If the original "
"message's 'From' does not match with the domain whitelist then it is "
"replaced with this value. If does match with the domain whitelist then the "
"original message's 'From' will not change"
msgstr ""
"Definalo para usar un dirección de correo 'De' especifica. Si el 'De' del "
"mensaje original no coincide con la lista blanca de dominios entonces este "
"será remplazado con este valor. Si coincide con la lista blanca de dominios "
"entonces el 'De' del mensajee original no cambiará"
76 changes: 76 additions & 0 deletions mail_outbound_static/i18n/it.po
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_outbound_static
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 17.0\n"
"Report-Msgid-Bugs-To: \n"
"PO-Revision-Date: 2024-02-04 22:34+0000\n"
"Last-Translator: mymage <[email protected]>\n"
"Language-Team: none\n"
"Language: it\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=2; plural=n != 1;\n"
"X-Generator: Weblate 4.17\n"

#. module: mail_outbound_static
#. odoo-python
#: code:addons/mail_outbound_static/models/ir_mail_server.py:0
#, python-format
msgid ""
"%s is not a valid domain. Please define a list of valid domains separated by"
" comma"
msgstr ""
"%s non è un dominio valido. Definire una lista di domini validi separati da "
"virgola"

#. module: mail_outbound_static
#: model:ir.model.fields,help:mail_outbound_static.field_ir_mail_server__domain_whitelist
msgid ""
"Allowed Domains list separated by commas. If there is not given SMTP server "
"it will let us to search the proper mail server to be used to sent the "
"messages where the message 'From' email domain match with the domain "
"whitelist."
msgstr ""
"Consente elenco domni separati da virgola. Se non è definito un server SMTP "
"si potrà cercare l'appropriato server di posta da utilizzare per inviare "
"messaggi nei quali il dominio del campo 'Da' corrisponde con un dominio "
"autorizzato."

#. module: mail_outbound_static
#: model:ir.model.fields,field_description:mail_outbound_static.field_ir_mail_server__domain_whitelist
msgid "Domain Whitelist"
msgstr "Elenco domini autorizzati"

#. module: mail_outbound_static
#: model:ir.model.fields,field_description:mail_outbound_static.field_ir_mail_server__smtp_from
msgid "Email From"
msgstr "E-mail da"

#. module: mail_outbound_static
#: model:ir.model,name:mail_outbound_static.model_ir_mail_server
msgid "Mail Server"
msgstr "Server di posta"

#. module: mail_outbound_static
#. odoo-python
#: code:addons/mail_outbound_static/models/ir_mail_server.py:0
#, python-format
msgid "Not a valid Email From"
msgstr "Campo e-mail Da non valido"

#. module: mail_outbound_static
#: model:ir.model.fields,help:mail_outbound_static.field_ir_mail_server__smtp_from
msgid ""
"Set this in order to email from a specific address. If the original "
"message's 'From' does not match with the domain whitelist then it is "
"replaced with this value. If does match with the domain whitelist then the "
"original message's 'From' will not change"
msgstr ""
"Impostare per inviare da un indirizzo specifico. Se il campo 'Da' originale "
"del messaggio non corrisponde con il dominio della lista autorizzata allora "
"è sostituito con questo valore. Se corrisponde ad un dominio autorizzato "
"allora il campo 'Da' non cambierà"
63 changes: 63 additions & 0 deletions mail_outbound_static/i18n/mail_outbound_static.pot
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_outbound_static
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 17.0\n"
"Report-Msgid-Bugs-To: \n"
"Last-Translator: \n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"

#. module: mail_outbound_static
#. odoo-python
#: code:addons/mail_outbound_static/models/ir_mail_server.py:0
#, python-format
msgid ""
"%s is not a valid domain. Please define a list of valid domains separated by"
" comma"
msgstr ""

#. module: mail_outbound_static
#: model:ir.model.fields,help:mail_outbound_static.field_ir_mail_server__domain_whitelist
msgid ""
"Allowed Domains list separated by commas. If there is not given SMTP server "
"it will let us to search the proper mail server to be used to sent the "
"messages where the message 'From' email domain match with the domain "
"whitelist."
msgstr ""

#. module: mail_outbound_static
#: model:ir.model.fields,field_description:mail_outbound_static.field_ir_mail_server__domain_whitelist
msgid "Domain Whitelist"
msgstr ""

#. module: mail_outbound_static
#: model:ir.model.fields,field_description:mail_outbound_static.field_ir_mail_server__smtp_from
msgid "Email From"
msgstr ""

#. module: mail_outbound_static
#: model:ir.model,name:mail_outbound_static.model_ir_mail_server
msgid "Mail Server"
msgstr ""

#. module: mail_outbound_static
#. odoo-python
#: code:addons/mail_outbound_static/models/ir_mail_server.py:0
#, python-format
msgid "Not a valid Email From"
msgstr ""

#. module: mail_outbound_static
#: model:ir.model.fields,help:mail_outbound_static.field_ir_mail_server__smtp_from
msgid ""
"Set this in order to email from a specific address. If the original "
"message's 'From' does not match with the domain whitelist then it is "
"replaced with this value. If does match with the domain whitelist then the "
"original message's 'From' will not change"
msgstr ""
4 changes: 4 additions & 0 deletions mail_outbound_static/models/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Copyright 2017 LasLabs Inc.
# License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl.html).

from . import ir_mail_server
Loading
Loading