Skip to content

Commit

Permalink
[MIG] mass_mailing_unique: Migration to 11.0
Browse files Browse the repository at this point in the history
  • Loading branch information
ernestotejeda authored and ivantodorovich committed Sep 23, 2021
1 parent 7e76d5f commit d7d978d
Show file tree
Hide file tree
Showing 22 changed files with 665 additions and 110 deletions.
74 changes: 53 additions & 21 deletions mass_mailing_unique/README.rst
Original file line number Diff line number Diff line change
@@ -1,18 +1,42 @@
.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3

===============================
Unique records for mass mailing
===============================

.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!! This file is generated by oca-gen-addon-readme !!
!! changes will be overwritten. !!
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
.. |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-AGPL--3-blue.png
:target: http://www.gnu.org/licenses/agpl-3.0-standalone.html
:alt: License: AGPL-3
.. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fsocial-lightgray.png?logo=github
:target: https://github.com/OCA/social/tree/11.0/mass_mailing_unique
:alt: OCA/social
.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png
:target: https://translation.odoo-community.org/projects/social-11-0/social-11-0-mass_mailing_unique
:alt: Translate me on Weblate
.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png
:target: https://runbot.odoo-community.org/runbot/205/11.0
:alt: Try me on Runbot

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

This module extends the functionality of mass mailing lists to disable
duplicate entries in list names and contact emails per list.

This way you will avoid sending the same message more than once to the same
contact when selecting a mailing list, and you will avoid conflicts when
importing contacts to a list that has a duplicated name.

**Table of contents**

.. contents::
:local:

Installation
============

Expand All @@ -27,39 +51,47 @@ Usage
To use this module, you need to try to create a duplicated mailing list, or a
duplicated email inside one. You will not can.

.. 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/10.0

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.
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 <https://github.com/OCA/social/issues/new?body=module:%20mass_mailing_unique%0Aversion:%2011.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
~~~~~~~

* Tecnativa

Contributors
------------
~~~~~~~~~~~~

* `Tecnativa <https://www.tecnativa.com>`_:

* Jairo Llopis <[email protected]>
* Vicent Cubells <[email protected]>
* Pedro M. Baeza <[email protected]>
* Jairo Llopis
* Vicent Cubells
* Pedro M. Baeza
* Ernesto Tejeda

Maintainer
----------
Maintainers
~~~~~~~~~~~

This module is maintained by the OCA.

.. 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.
This module is part of the `OCA/social <https://github.com/OCA/social/tree/11.0/mass_mailing_unique>`_ project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.
1 change: 0 additions & 1 deletion mass_mailing_unique/__init__.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Copyright 2015 Grupo ESOC Ingeniería de Servicios, S.L.U. - Jairo Llopis
# Copyright 2016 Tecnativa - Vicent Cubells
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
Expand Down
5 changes: 2 additions & 3 deletions mass_mailing_unique/__manifest__.py
Original file line number Diff line number Diff line change
@@ -1,14 +1,13 @@
# -*- coding: utf-8 -*-
# Copyright 2015 Grupo ESOC Ingeniería de Servicios, S.L.U. - Jairo Llopis
# Copyright 2016 Tecnativa - Vicent Cubells
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).

{
"name": "Unique records for mass mailing",
"summary": "Avoids duplicate mailing lists and contacts",
"version": "10.0.1.0.0",
"version": "11.0.1.0.0",
"category": "Marketing",
"website": "https://tecnativa.com",
"website": "https://github.com/OCA/social",
"author": "Tecnativa, "
"Odoo Community Association (OCA)",
"license": "AGPL-3",
Expand Down
9 changes: 5 additions & 4 deletions mass_mailing_unique/hooks.py
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
# -*- coding: utf-8 -*-
# Copyright 2015 Grupo ESOC Ingeniería de Servicios, S.L.U. - Jairo Llopis
# Copyright 2016 Tecnativa - Vicent Cubells
# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html).
Expand All @@ -19,11 +18,13 @@ def pre_init_hook(cr):
errors = list()

# Search for duplicates in emails
cr.execute("""SELECT c.email, l.name, COUNT(c.id)
cr.execute("""SELECT LOWER(c.email) AS e, l.name, COUNT(c.id)
FROM
mail_mass_mailing_contact AS c
INNER JOIN mail_mass_mailing_list AS l ON c.list_id = l.id
GROUP BY l.name, l.id, c.email
INNER JOIN mail_mass_mailing_contact_list_rel AS cl
ON cl.contact_id = c.id
INNER JOIN mail_mass_mailing_list AS l ON cl.list_id = l.id
GROUP BY l.name, e
HAVING COUNT(c.id) > 1""")
for result in cr.fetchall():
errors.append(
Expand Down
15 changes: 8 additions & 7 deletions mass_mailing_unique/i18n/ca.po
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mass_mailing_unique
#
#
# Translators:
# Carles Antoli <[email protected]>, 2017
msgid ""
Expand All @@ -12,10 +12,10 @@ msgstr ""
"PO-Revision-Date: 2017-01-07 07:32+0000\n"
"Last-Translator: Carles Antoli <[email protected]>, 2017\n"
"Language-Team: Catalan (https://www.transifex.com/oca/teams/23907/ca/)\n"
"Language: ca\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: ca\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. module: mass_mailing_unique
Expand All @@ -24,14 +24,15 @@ msgid "Cannot have more than one lists with the same name."
msgstr "No es pot tenir més d'una llista amb el mateix nom."

#. module: mass_mailing_unique
#: sql_constraint:mail.mass_mailing.contact:0
msgid "Cannot have the same email more than once in the same list."
#: code:addons/mass_mailing_unique/models/mass_mailing.py:21
#, fuzzy, python-format
msgid "Cannot have the same email more than once in the same list"
msgstr ""
"No es pot tenir el mateix correu electrònic més d'una vegada en la mateixa "
"llista."

#. module: mass_mailing_unique
#: code:addons/mass_mailing_unique/hooks.py:44
#: code:addons/mass_mailing_unique/hooks.py:45
#, python-format
msgid "Fix this before installing:"
msgstr "Solucionar això abans d'instal·lar:"
Expand All @@ -47,13 +48,13 @@ msgid "Mass Mailing Contact"
msgstr "Contactes del correu massiu"

#. module: mass_mailing_unique
#: code:addons/mass_mailing_unique/hooks.py:39
#: code:addons/mass_mailing_unique/hooks.py:40
#, python-format
msgid "There are {1} lists with name {0}."
msgstr "Hi ha {1} llistes amb el nom {0}."

#. module: mass_mailing_unique
#: code:addons/mass_mailing_unique/hooks.py:30
#: code:addons/mass_mailing_unique/hooks.py:31
#, python-format
msgid "{0} appears {2} times in list {1}."
msgstr "{0} apareix {2} vegades en la llista {1}."
15 changes: 8 additions & 7 deletions mass_mailing_unique/i18n/de.po
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mass_mailing_unique
#
#
# Translators:
# Rudolf Schnapka <[email protected]>, 2017
msgid ""
Expand All @@ -12,10 +12,10 @@ msgstr ""
"PO-Revision-Date: 2017-03-28 08:19+0000\n"
"Last-Translator: Rudolf Schnapka <[email protected]>, 2017\n"
"Language-Team: German (https://www.transifex.com/oca/teams/23907/de/)\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: de\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. module: mass_mailing_unique
Expand All @@ -24,13 +24,14 @@ msgid "Cannot have more than one lists with the same name."
msgstr "Sie dürfen nicht mehrere Listen gleich Namens führen."

#. module: mass_mailing_unique
#: sql_constraint:mail.mass_mailing.contact:0
msgid "Cannot have the same email more than once in the same list."
#: code:addons/mass_mailing_unique/models/mass_mailing.py:21
#, fuzzy, python-format
msgid "Cannot have the same email more than once in the same list"
msgstr ""
"Die gleiche Email-Anschrift darf nicht mehrmals in einer Liste vorkommen."

#. module: mass_mailing_unique
#: code:addons/mass_mailing_unique/hooks.py:44
#: code:addons/mass_mailing_unique/hooks.py:45
#, python-format
msgid "Fix this before installing:"
msgstr "Beheben Sie dies vor der Installation:"
Expand All @@ -46,13 +47,13 @@ msgid "Mass Mailing Contact"
msgstr "Massenmail-Kontakt"

#. module: mass_mailing_unique
#: code:addons/mass_mailing_unique/hooks.py:39
#: code:addons/mass_mailing_unique/hooks.py:40
#, python-format
msgid "There are {1} lists with name {0}."
msgstr "Es gibt {1} Liste mit Name {0}."

#. module: mass_mailing_unique
#: code:addons/mass_mailing_unique/hooks.py:30
#: code:addons/mass_mailing_unique/hooks.py:31
#, python-format
msgid "{0} appears {2} times in list {1}."
msgstr "{0} erscheint {2} mal in der Liste {1}."
15 changes: 8 additions & 7 deletions mass_mailing_unique/i18n/es.po
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mass_mailing_unique
#
#
# Translators:
# OCA Transbot <[email protected]>, 2017
msgid ""
Expand All @@ -12,10 +12,10 @@ msgstr ""
"PO-Revision-Date: 2017-01-04 03:40+0000\n"
"Last-Translator: OCA Transbot <[email protected]>, 2017\n"
"Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/es/)\n"
"Language: es\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: es\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"

#. module: mass_mailing_unique
Expand All @@ -24,12 +24,13 @@ msgid "Cannot have more than one lists with the same name."
msgstr "No se puede tener más de una lista con el mismo nombre."

#. module: mass_mailing_unique
#: sql_constraint:mail.mass_mailing.contact:0
msgid "Cannot have the same email more than once in the same list."
#: code:addons/mass_mailing_unique/models/mass_mailing.py:21
#, fuzzy, python-format
msgid "Cannot have the same email more than once in the same list"
msgstr "No se puede tener el mismo email varias veces en la misma lista."

#. module: mass_mailing_unique
#: code:addons/mass_mailing_unique/hooks.py:44
#: code:addons/mass_mailing_unique/hooks.py:45
#, python-format
msgid "Fix this before installing:"
msgstr "Arregle esto antes de instalar:"
Expand All @@ -45,13 +46,13 @@ msgid "Mass Mailing Contact"
msgstr "Contacto de envío masivo"

#. module: mass_mailing_unique
#: code:addons/mass_mailing_unique/hooks.py:39
#: code:addons/mass_mailing_unique/hooks.py:40
#, python-format
msgid "There are {1} lists with name {0}."
msgstr "Hay {1} listas con el nombre {0}."

#. module: mass_mailing_unique
#: code:addons/mass_mailing_unique/hooks.py:30
#: code:addons/mass_mailing_unique/hooks.py:31
#, python-format
msgid "{0} appears {2} times in list {1}."
msgstr "{0} aparece {2} veces en la lista {1}."
18 changes: 9 additions & 9 deletions mass_mailing_unique/i18n/fr.po
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# Translation of Odoo Server.
# This file contains the translation of the following modules:
# * mass_mailing_unique
#
#
# Translators:
# OCA Transbot <[email protected]>, 2017
msgid ""
Expand All @@ -12,10 +12,10 @@ msgstr ""
"PO-Revision-Date: 2017-01-04 03:40+0000\n"
"Last-Translator: OCA Transbot <[email protected]>, 2017\n"
"Language-Team: French (https://www.transifex.com/oca/teams/23907/fr/)\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Language: fr\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"

#. module: mass_mailing_unique
Expand All @@ -24,13 +24,13 @@ msgid "Cannot have more than one lists with the same name."
msgstr "Impossible d'avoir plus d'une liste avec le même nom."

#. module: mass_mailing_unique
#: sql_constraint:mail.mass_mailing.contact:0
msgid "Cannot have the same email more than once in the same list."
msgstr ""
"Impossible d'avoir le même courriel plus d'une fois dans la même liste"
#: code:addons/mass_mailing_unique/models/mass_mailing.py:21
#, fuzzy, python-format
msgid "Cannot have the same email more than once in the same list"
msgstr "Impossible d'avoir le même courriel plus d'une fois dans la même liste"

#. module: mass_mailing_unique
#: code:addons/mass_mailing_unique/hooks.py:44
#: code:addons/mass_mailing_unique/hooks.py:45
#, python-format
msgid "Fix this before installing:"
msgstr "Fixer avant l'installation:"
Expand All @@ -46,13 +46,13 @@ msgid "Mass Mailing Contact"
msgstr "Contact de la liste de diffusion"

#. module: mass_mailing_unique
#: code:addons/mass_mailing_unique/hooks.py:39
#: code:addons/mass_mailing_unique/hooks.py:40
#, python-format
msgid "There are {1} lists with name {0}."
msgstr "Il y'a {1} listes avec le nom {0}."

#. module: mass_mailing_unique
#: code:addons/mass_mailing_unique/hooks.py:30
#: code:addons/mass_mailing_unique/hooks.py:31
#, python-format
msgid "{0} appears {2} times in list {1}."
msgstr "{0} Apparaît {2} fois dans la liste {1}."
Loading

0 comments on commit d7d978d

Please sign in to comment.