Merge PR #879 into 15.0

Signed-off-by etobella
This commit is contained in:
OCA-git-bot 2022-10-16 17:45:13 +00:00
commit 9a00415908
22 changed files with 596 additions and 0 deletions

View File

@ -0,0 +1,85 @@
.. image:: https://img.shields.io/badge/license-AGPL--3-blue.png
:target: https://www.gnu.org/licenses/agpl
:alt: License: AGPL-3
========================
Mail optional autofollow
========================
This module adds the possibility to choose if you want to automatically
add new recipients as followers on mail.compose.message.
Installation
============
Configuration
=============
Usage
=====
To use this module, you need to use the autofollow recipients checkbox on
mail.compose.message:
Technically, this field is initialized to true if there is a
'mail_post_autofollow' key in the current context
.. figure:: static/description/autofollow.png
:alt: autofollow recipients checkbox
.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas
:alt: Try me on Runbot
:target: https://runbot.odoo-community.org/runbot/205/11.0
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
smashing it by providing a detailed and welcomed feedback
`here <https://github.com/OCA/social/issues/new?body=module:%20mail_optional_autofollow%0Aversion:%2011.0%0A%0A**Steps%20to%20reproduce**%0A-%20...%0A%0A**Current%20behavior**%0A%0A**Expected%20behavior**>`_.
Credits
=======
Images
------
* Odoo Community Association: `Icon <https://odoo-community.org/logo.png>`_.
Contributors
------------
* Adrien Peiffer <adrien.peiffer@acsone.eu>
* Stéphane Bidoul <stephane.bidoul@acsone.eu>
Do not contact contributors directly about support or help with technical issues.
Funders
-------
The development of this module has been financially supported by:
* Acsone
Maintainer
----------
.. image:: https://odoo-community.org/logo.png
:alt: Odoo Community Association
:target: https://odoo-community.org
This module is maintained by the OCA.
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.
To contribute to this module, please visit https://odoo-community.org.

View File

@ -0,0 +1 @@
from . import wizard

View File

@ -0,0 +1,16 @@
# Copyright 2016 ACSONE SA/NV (<http://acsone.eu>)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
{
"name": "Mail optional autofollow",
"summary": """
Choose if you want to automatically add new recipients as followers
on mail.compose.message""",
"author": "ACSONE SA/NV," "Odoo Community Association (OCA)",
"website": "https://github.com/OCA/social",
"category": "Social Network",
"version": "15.0.1.0.0",
"license": "AGPL-3",
"depends": ["mail"],
"data": ["wizard/mail_compose_message_view.xml"],
"installable": True,
}

View File

@ -0,0 +1,38 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_optional_autofollow
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: social (8.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-14 07:09+0000\n"
"PO-Revision-Date: 2016-04-05 07:05+0000\n"
"Last-Translator: <>\n"
"Language-Team: Catalan (http://www.transifex.com/oca/OCA-social-8-0/language/"
"ca/)\n"
"Language: ca\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"
#. module: mail_optional_autofollow
#: model:ir.model,name:mail_optional_autofollow.model_mail_compose_message
msgid "Email composition wizard"
msgstr "Assistent per composició de correus electrònics"
#. module: mail_optional_autofollow
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid "Make recipients followers"
msgstr ""
#. module: mail_optional_autofollow
#: model:ir.model.fields,help:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,help:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid ""
"if checked, the additional recipients will be added as followers on "
"the related object"
msgstr ""

View File

@ -0,0 +1,41 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_optional_autofollow
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: social (8.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-14 07:09+0000\n"
"PO-Revision-Date: 2018-12-15 14:58+0000\n"
"Last-Translator: Maria Sparenberg <maria.sparenberg@gmx.net>\n"
"Language-Team: German (http://www.transifex.com/oca/OCA-social-8-0/language/"
"de/)\n"
"Language: de\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 3.3\n"
#. module: mail_optional_autofollow
#: model:ir.model,name:mail_optional_autofollow.model_mail_compose_message
msgid "Email composition wizard"
msgstr "Assistent zum Email verfassen"
#. module: mail_optional_autofollow
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid "Make recipients followers"
msgstr "Empfänger als Abonnenten hinzufügen"
#. module: mail_optional_autofollow
#: model:ir.model.fields,help:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,help:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid ""
"if checked, the additional recipients will be added as followers on "
"the related object"
msgstr ""
"Wenn der Haken gesetzt ist, werden die zusätzlichen Empfänger zu Abonnenten "
"dieses Objektes"

View File

@ -0,0 +1,38 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_optional_autofollow
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: social (8.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-14 07:09+0000\n"
"PO-Revision-Date: 2016-04-05 07:05+0000\n"
"Last-Translator: <>\n"
"Language-Team: Spanish (http://www.transifex.com/oca/OCA-social-8-0/language/"
"es/)\n"
"Language: es\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"
#. module: mail_optional_autofollow
#: model:ir.model,name:mail_optional_autofollow.model_mail_compose_message
msgid "Email composition wizard"
msgstr "Asistente composición Correo Electrónico"
#. module: mail_optional_autofollow
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid "Make recipients followers"
msgstr ""
#. module: mail_optional_autofollow
#: model:ir.model.fields,help:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,help:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid ""
"if checked, the additional recipients will be added as followers on "
"the related object"
msgstr ""

View File

@ -0,0 +1,38 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_optional_autofollow
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: social (8.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-14 07:09+0000\n"
"PO-Revision-Date: 2016-04-05 07:05+0000\n"
"Last-Translator: <>\n"
"Language-Team: Spanish (Colombia) (http://www.transifex.com/oca/OCA-"
"social-8-0/language/es_CO/)\n"
"Language: es_CO\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"
#. module: mail_optional_autofollow
#: model:ir.model,name:mail_optional_autofollow.model_mail_compose_message
msgid "Email composition wizard"
msgstr "Asistente de redacción de E-mail"
#. module: mail_optional_autofollow
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid "Make recipients followers"
msgstr ""
#. module: mail_optional_autofollow
#: model:ir.model.fields,help:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,help:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid ""
"if checked, the additional recipients will be added as followers on "
"the related object"
msgstr ""

View File

@ -0,0 +1,40 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_optional_autofollow
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: social (9.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-06-12 02:44+0000\n"
"PO-Revision-Date: 2016-06-11 22:15+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>\n"
"Language-Team: French (http://www.transifex.com/oca/OCA-social-9-0/language/"
"fr/)\n"
"Language: fr\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"
#. module: mail_optional_autofollow
#: model:ir.model,name:mail_optional_autofollow.model_mail_compose_message
msgid "Email composition wizard"
msgstr "Assistant de composition de courriel"
#. module: mail_optional_autofollow
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid "Make recipients followers"
msgstr "Abonner les destinataires"
#. module: mail_optional_autofollow
#: model:ir.model.fields,help:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,help:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid ""
"if checked, the additional recipients will be added as followers on "
"the related object"
msgstr ""
"Si coché, les destinataires supplémentaires seront ajoutés comme abonné au "
"file de discussion sur l'objet lié"

View File

@ -0,0 +1,42 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_optional_autofollow
#
# Translators:
# Bole <bole@dajmi5.com>, 2016
msgid ""
msgstr ""
"Project-Id-Version: social (9.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-06-13 02:44+0000\n"
"PO-Revision-Date: 2016-06-14 11:31+0000\n"
"Last-Translator: Bole <bole@dajmi5.com>\n"
"Language-Team: Croatian (http://www.transifex.com/oca/OCA-social-9-0/"
"language/hr/)\n"
"Language: hr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n"
#. module: mail_optional_autofollow
#: model:ir.model,name:mail_optional_autofollow.model_mail_compose_message
msgid "Email composition wizard"
msgstr "Čarobnjak za sastavljanje maila"
#. module: mail_optional_autofollow
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid "Make recipients followers"
msgstr "Učini primatelje i pratiteljima"
#. module: mail_optional_autofollow
#: model:ir.model.fields,help:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,help:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid ""
"if checked, the additional recipients will be added as followers on "
"the related object"
msgstr ""
"Ukoliko je označeno, dodatni primatelji će biti dodani i kao pratitelji na "
"povezanom objektu"

View File

@ -0,0 +1,40 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_optional_autofollow
#
# Translators:
# Marius Marolla <mariusmarolla@gmail.com>, 2017
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 10.0\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-05-17 01:02+0000\n"
"PO-Revision-Date: 2017-05-17 01:02+0000\n"
"Last-Translator: Marius Marolla <mariusmarolla@gmail.com>, 2017\n"
"Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\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"
#. module: mail_optional_autofollow
#: model:ir.model,name:mail_optional_autofollow.model_mail_compose_message
msgid "Email composition wizard"
msgstr "Wizard Creazione Email"
#. module: mail_optional_autofollow
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid "Make recipients followers"
msgstr "Destinatari in Follower"
#. module: mail_optional_autofollow
#: model:ir.model.fields,help:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,help:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid ""
"if checked, the additional recipients will be added as followers on "
"the related object"
msgstr ""
"Se l'opzione è spuntata, i destinatari verranno aggiunti ai follower di "
"questo documento."

View File

@ -0,0 +1,33 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_optional_autofollow
#
msgid ""
msgstr ""
"Project-Id-Version: Odoo Server 13.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_optional_autofollow
#: model:ir.model,name:mail_optional_autofollow.model_mail_compose_message
msgid "Email composition wizard"
msgstr ""
#. module: mail_optional_autofollow
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid "Make recipients followers"
msgstr ""
#. module: mail_optional_autofollow
#: model:ir.model.fields,help:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,help:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid ""
"if checked, the additional recipients will be added as followers on "
"the related object"
msgstr ""

View File

@ -0,0 +1,38 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_optional_autofollow
#
# Translators:
msgid ""
msgstr ""
"Project-Id-Version: social (8.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-04-14 07:09+0000\n"
"PO-Revision-Date: 2016-04-05 07:05+0000\n"
"Last-Translator: <>\n"
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/oca/OCA-"
"social-8-0/language/pt_BR/)\n"
"Language: pt_BR\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"
#. module: mail_optional_autofollow
#: model:ir.model,name:mail_optional_autofollow.model_mail_compose_message
msgid "Email composition wizard"
msgstr "Assistente de Composição de Email"
#. module: mail_optional_autofollow
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid "Make recipients followers"
msgstr ""
#. module: mail_optional_autofollow
#: model:ir.model.fields,help:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,help:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid ""
"if checked, the additional recipients will be added as followers on "
"the related object"
msgstr ""

View File

@ -0,0 +1,40 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mail_optional_autofollow
#
# Translators:
# Matjaž Mozetič <m.mozetic@matmoz.si>, 2016
msgid ""
msgstr ""
"Project-Id-Version: social (9.0)\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2016-06-12 02:44+0000\n"
"PO-Revision-Date: 2016-06-11 22:15+0000\n"
"Last-Translator: OCA Transbot <transbot@odoo-community.org>\n"
"Language-Team: Slovenian (http://www.transifex.com/oca/OCA-social-9-0/"
"language/sl/)\n"
"Language: sl\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n"
"%100==4 ? 2 : 3);\n"
#. module: mail_optional_autofollow
#: model:ir.model,name:mail_optional_autofollow.model_mail_compose_message
msgid "Email composition wizard"
msgstr "Čarovnik za sestavljanje e-pošte"
#. module: mail_optional_autofollow
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,field_description:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid "Make recipients followers"
msgstr "Prejemniki bodo sledilci"
#. module: mail_optional_autofollow
#: model:ir.model.fields,help:mail_optional_autofollow.field_account_invoice_send__autofollow_recipients
#: model:ir.model.fields,help:mail_optional_autofollow.field_mail_compose_message__autofollow_recipients
msgid ""
"if checked, the additional recipients will be added as followers on "
"the related object"
msgstr "če označeno, se objektu dodajo dodatni prejemniki kot sledilci"

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

View File

@ -0,0 +1 @@
from . import test_mail_optional_autofollow

View File

@ -0,0 +1,51 @@
# Copyright 2016 ACSONE SA/NV (<http://acsone.eu>)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from odoo.tests import common
class TestAttachExistingAttachment(common.TransactionCase):
def setUp(self):
super(TestAttachExistingAttachment, self).setUp()
self.partner_obj = self.env["res.partner"]
self.partner_01 = self.env.ref("base.res_partner_10")
self.partner_02 = self.env.ref("base.res_partner_address_17")
def test_send_email_attachment(self):
ctx = self.env.context.copy()
ctx.update(
{
"default_model": "res.partner",
"default_res_id": self.partner_01.id,
"default_composition_mode": "comment",
}
)
mail_compose = self.env["mail.compose.message"]
values = mail_compose.with_context(**ctx)._onchange_template_id(
False, "comment", "res.partner", self.partner_01.id
)["value"]
values["partner_ids"] = [(4, self.partner_02.id)]
compose_id = mail_compose.with_context(**ctx).create(values)
compose_id.autofollow_recipients = False
compose_id.with_context(**ctx).action_send_mail()
res = self.env["mail.followers"].search(
[
("res_model", "=", "res.partner"),
("res_id", "=", self.partner_01.id),
("partner_id", "=", self.partner_02.id),
]
)
# I check if the recipient isn't a follower
self.assertEqual(len(res.ids), 0)
compose_id = mail_compose.with_context(**ctx).create(values)
compose_id.autofollow_recipients = True
compose_id.with_context(**ctx).action_send_mail()
res = self.env["mail.followers"].search(
[
("res_model", "=", "res.partner"),
("res_id", "=", self.partner_01.id),
("partner_id", "=", self.partner_02.id),
]
)
# I check if the recipient is a follower
self.assertEqual(len(res.ids), 1)

View File

@ -0,0 +1 @@
from . import mail_compose_message

View File

@ -0,0 +1,30 @@
# Copyright 2016 ACSONE SA/NV (<http://acsone.eu>)
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from odoo import api, fields, models
class MailComposeMessage(models.TransientModel):
_inherit = "mail.compose.message"
@api.model
def default_get(self, fields_list):
res = super(MailComposeMessage, self).default_get(fields_list)
res.setdefault(
"autofollow_recipients", self.env.context.get("mail_post_autofollow", False)
)
return res
autofollow_recipients = fields.Boolean(
string="Make recipients followers",
help="""if checked, the additional recipients will be added as\
followers on the related object""",
)
def _action_send_mail(self, auto_commit=False):
for wizard in self:
super(
MailComposeMessage,
wizard.with_context(mail_post_autofollow=wizard.autofollow_recipients),
)._action_send_mail(auto_commit=auto_commit)
return True

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8" ?>
<odoo>
<record model="ir.ui.view" id="email_compose_message_wizard_inherit_form">
<field name="name">mail.compose.message.form (mail_optional_autofollow)</field>
<field name="model">mail.compose.message</field>
<field name="inherit_id" ref="mail.email_compose_message_wizard_form" />
<field name="arch" type="xml">
<xpath expr="//div[field[@name='partner_ids']]" position="after">
<field
name="autofollow_recipients"
attrs="{'invisible': [('composition_mode', '=', 'mass_mail')]}"
/>
</xpath>
</field>
</record>
</odoo>

View File

@ -0,0 +1 @@
../../../../mail_optional_autofollow

View File

@ -0,0 +1,6 @@
import setuptools
setuptools.setup(
setup_requires=['setuptools-odoo'],
odoo_addon=True,
)