[FIX] mass_mailing_partner: Unsubscribe should not unlink the subscription.

Before, on the backend if you check the `opt_out` checkbox and saving on a `mailing.contact`, the entire row (`mailing.contact.subscription`) would be unlinked.  Combined with `mass_mailing_list_dynamic` this means the contact would just be re-subscribed over and over.

After, check `opt_out` will fill `unsubscription_date` and the row will stay.  Tests in `mass_mailing_list_dynamic` pass.
pull/1326/head
Jared Kipe 2020-03-18 07:29:18 -07:00 committed by Mohamed Osman
parent 434e10fbe5
commit 60b079cc6c
13 changed files with 12 additions and 13 deletions

View File

@ -88,6 +88,8 @@ Contributors
* Victor M.M. Torres
* Manuel Calero
* `Hibou Corp. <https://hibou.io>`_
Maintainers
~~~~~~~~~~~

View File

@ -6,7 +6,7 @@
{
"name": "Link partners with mass-mailing",
"version": "13.0.1.0.0",
"version": "13.0.1.0.1",
"author": "Tecnativa, " "Odoo Community Association (OCA)",
"website": "https://github.com/OCA/social",
"license": "AGPL-3",

View File

@ -102,7 +102,6 @@ msgstr "Llista d'enviament"
#. module: mass_mailing_partner
#: model:ir.model,name:mass_mailing_partner.model_mailing_trace
#, fuzzy
#| msgid "Email Statistics"
msgid "Mailing Statistics"
msgstr "Estadístiques de correu electrònic"

View File

@ -102,7 +102,6 @@ msgstr "Mailingliste"
#. module: mass_mailing_partner
#: model:ir.model,name:mass_mailing_partner.model_mailing_trace
#, fuzzy
#| msgid "Email Statistics"
msgid "Mailing Statistics"
msgstr "Email-Statistiken"

View File

@ -103,7 +103,6 @@ msgstr "Lista de correo"
#. module: mass_mailing_partner
#: model:ir.model,name:mass_mailing_partner.model_mailing_trace
#, fuzzy
#| msgid "Email Statistics"
msgid "Mailing Statistics"
msgstr "Estadísticas de email"

View File

@ -102,7 +102,6 @@ msgstr "Liste de diffusion"
#. module: mass_mailing_partner
#: model:ir.model,name:mass_mailing_partner.model_mailing_trace
#, fuzzy
#| msgid "Email Statistics"
msgid "Mailing Statistics"
msgstr "Statistiques de courriel"

View File

@ -103,7 +103,6 @@ msgstr "Mailing lista"
#. module: mass_mailing_partner
#: model:ir.model,name:mass_mailing_partner.model_mailing_trace
#, fuzzy
#| msgid "Email Statistics"
msgid "Mailing Statistics"
msgstr "Statistika e-maila"

View File

@ -102,7 +102,6 @@ msgstr "Mailing List"
#. module: mass_mailing_partner
#: model:ir.model,name:mass_mailing_partner.model_mailing_trace
#, fuzzy
#| msgid "Mailing List"
msgid "Mailing Statistics"
msgstr "Mailing List"

View File

@ -103,7 +103,6 @@ msgstr ""
#. module: mass_mailing_partner
#: model:ir.model,name:mass_mailing_partner.model_mailing_trace
#, fuzzy
#| msgid "Email Statistics"
msgid "Mailing Statistics"
msgstr "Estatísticas de Email"

View File

@ -103,7 +103,6 @@ msgstr "Poštni seznam"
#. module: mass_mailing_partner
#: model:ir.model,name:mass_mailing_partner.model_mailing_trace
#, fuzzy
#| msgid "Email Statistics"
msgid "Mailing Statistics"
msgstr "Statistika e-pošte"

View File

@ -3,6 +3,7 @@
# Copyright 2015 Javier Iniesta <javieria@antiun.com>
# Copyright 2017 David Vidal <david.vidal@tecnativa.com>
# Copyright 2020 Tecnativa - Manuel Calero
# Copyright 2020 Hibou Corp.
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
from odoo import _, api, fields, models
@ -51,8 +52,8 @@ class MailingContact(models.Model):
record._onchange_partner_mass_mailing_partner()
new_vals = record._convert_to_write(record._cache)
new_vals.update(
subscription_list_ids=vals.get("subscription_list_ids", False),
list_ids=vals.get("list_ids", False),
subscription_list_ids=vals.get("subscription_list_ids", []),
list_ids=vals.get("list_ids", []),
)
return super(MailingContact, self).create(new_vals)
@ -65,8 +66,8 @@ class MailingContact(models.Model):
record._onchange_partner_mass_mailing_partner()
new_vals = record._convert_to_write(record._cache)
new_vals.update(
subscription_list_ids=vals.get("subscription_list_ids", False),
list_ids=vals.get("list_ids", False),
subscription_list_ids=vals.get("subscription_list_ids", []),
list_ids=vals.get("list_ids", []),
)
super(MailingContact, contact).write(new_vals)
return True

View File

@ -9,3 +9,5 @@
* Ernesto Tejeda
* Victor M.M. Torres
* Manuel Calero
* `Hibou Corp. <https://hibou.io>`_

View File

@ -435,6 +435,8 @@ If you spotted it first, help us smashing it by providing a detailed and welcome
</ul>
</blockquote>
</li>
<li><p class="first"><a class="reference external" href="https://hibou.io">Hibou Corp.</a></p>
</li>
</ul>
</div>
<div class="section" id="maintainers">