From 56f992839f464988f2b9d82441f1f05d1110ce9c Mon Sep 17 00:00:00 2001 From: denislour Date: Mon, 18 Dec 2017 18:31:01 +0700 Subject: [PATCH 01/21] Add new module partner-email-check (#496) * Add new module partner-email-check Validate email input --- partner_email_check/README.rst | 56 +++++++++++++++++++ partner_email_check/__init__.py | 5 ++ partner_email_check/__manifest__.py | 19 +++++++ partner_email_check/models/__init__.py | 5 ++ partner_email_check/models/res_partner.py | 36 ++++++++++++ partner_email_check/tests/__init__.py | 5 ++ .../tests/test_partner_email_check.py | 24 ++++++++ 7 files changed, 150 insertions(+) create mode 100644 partner_email_check/README.rst create mode 100644 partner_email_check/__init__.py create mode 100644 partner_email_check/__manifest__.py create mode 100644 partner_email_check/models/__init__.py create mode 100644 partner_email_check/models/res_partner.py create mode 100644 partner_email_check/tests/__init__.py create mode 100644 partner_email_check/tests/test_partner_email_check.py diff --git a/partner_email_check/README.rst b/partner_email_check/README.rst new file mode 100644 index 000000000..98e714b1b --- /dev/null +++ b/partner_email_check/README.rst @@ -0,0 +1,56 @@ +.. 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 + +=================== +Partner Email Check +=================== + +This module validate the field ``email`` in the module ``res.partner``. + +Configuration +============= + +Install python package validate_email: ``sudo pip install validate_email``. + +Usage +===== + +This module integrate automatically in all of the view ``res.partner`` + +Bug Tracker +=========== + +Bugs are tracked on `GitHub 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. + +Credits +======= + +Images +------ + +* Odoo Community Association: `Icon `_. + +Contributors +------------ + +* Vo Hoang Dat +* Jean-Charles Drubay + +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. diff --git a/partner_email_check/__init__.py b/partner_email_check/__init__.py new file mode 100644 index 000000000..0ba704c16 --- /dev/null +++ b/partner_email_check/__init__.py @@ -0,0 +1,5 @@ +# -*- coding: utf-8 -*- +# Copyright 2017 Komit +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import models diff --git a/partner_email_check/__manifest__.py b/partner_email_check/__manifest__.py new file mode 100644 index 000000000..74b6ac7a5 --- /dev/null +++ b/partner_email_check/__manifest__.py @@ -0,0 +1,19 @@ +# -*- coding: utf-8 -*- +# Copyright 2017 Komit +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +{ + 'name': 'Email Format Checker', + 'version': '10.0.1.0.0', + 'summary': 'Validate email address field', + 'author': "Komit, Odoo Community Association (OCA)", + 'website': 'http://komit-consulting.com', + 'category': 'Tools', + 'depends': ['base'], + 'installable': True, + 'application': False, + 'license': 'AGPL-3', + 'external_dependencies': { + 'python': ['validate_email'] + }, +} diff --git a/partner_email_check/models/__init__.py b/partner_email_check/models/__init__.py new file mode 100644 index 000000000..280addc7c --- /dev/null +++ b/partner_email_check/models/__init__.py @@ -0,0 +1,5 @@ +# -*- coding: utf-8 -*- +# Copyright 2017 Komit +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import res_partner diff --git a/partner_email_check/models/res_partner.py b/partner_email_check/models/res_partner.py new file mode 100644 index 000000000..afb3d47ae --- /dev/null +++ b/partner_email_check/models/res_partner.py @@ -0,0 +1,36 @@ +# -*- coding: utf-8 -*- +# Copyright 2017 Komit +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +import logging +from odoo import api, models, _ +from odoo.exceptions import UserError + +_logger = logging.getLogger(__name__) + +try: + from validate_email import validate_email +except ImportError: + _logger.error('Cannot import "validate_email".') + + def validate_email(email): + _logger.warning( + 'Can not validate email, ' + 'python dependency required "validate_email"') + return True + + +class ResPartner(models.Model): + _inherit = 'res.partner' + + @api.constrains('email') + def constrains_email(self): + for rec in self.filtered("email"): + self.email_check(rec.email) + + @api.model + def email_check(self, email): + if validate_email(email): + return True + else: + raise UserError(_('Invalid e-mail!')) diff --git a/partner_email_check/tests/__init__.py b/partner_email_check/tests/__init__.py new file mode 100644 index 000000000..413174026 --- /dev/null +++ b/partner_email_check/tests/__init__.py @@ -0,0 +1,5 @@ +# -*- coding: utf-8 -*- +# Copyright 2017 Komit +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import test_partner_email_check diff --git a/partner_email_check/tests/test_partner_email_check.py b/partner_email_check/tests/test_partner_email_check.py new file mode 100644 index 000000000..6050f3ad4 --- /dev/null +++ b/partner_email_check/tests/test_partner_email_check.py @@ -0,0 +1,24 @@ +# -*- coding: utf-8 -*- +# Copyright 2017 Komit +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo.exceptions import ValidationError +from odoo.tests.common import TransactionCase + + +class TestPartnerEmailCheck(TransactionCase): + def setUp(self): + super(TestPartnerEmailCheck, self).setUp() + self.test_partner = self.env['res.partner'].create({ + 'name': 'test', + }) + + def test_bad_email(self): + """Test rejection of bad emails.""" + with self.assertRaises(ValidationError): + self.test_partner.email = 'bad@email@domain..com' + + def test_good_email(self): + """Test acceptance of good""" + self.test_partner.email = 'goodemail@domain.com' + self.assertTrue(self.test_partner.email) From 467da311f131faf08feb0c8f02e1c856feb4858e Mon Sep 17 00:00:00 2001 From: OCA Transbot Date: Sat, 30 Dec 2017 08:34:34 +0100 Subject: [PATCH 02/21] OCA Transbot updated translations from Transifex --- partner_email_check/i18n/am.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/ar.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/bg.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/bs.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/ca.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/cs.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/da.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/de.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/el_GR.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/en_GB.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/es.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/es_CR.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/es_EC.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/es_MX.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/es_VE.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/et.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/eu.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/fi.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/fr.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/fr_CA.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/fr_CH.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/gl.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/hr.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/hr_HR.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/hu.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/it.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/ja.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/lt.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/lv.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/mk.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/mn.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/nb.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/nb_NO.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/nl.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/nl_BE.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/nl_NL.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/pl.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/pt.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/pt_BR.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/pt_PT.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/ro.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/ru.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/sk.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/sl.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/sr@latin.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/sv.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/th.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/tr.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/tr_TR.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/vi.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/zh_CN.po | 30 ++++++++++++++++++++++++++++ partner_email_check/i18n/zh_TW.po | 30 ++++++++++++++++++++++++++++ 52 files changed, 1560 insertions(+) create mode 100644 partner_email_check/i18n/am.po create mode 100644 partner_email_check/i18n/ar.po create mode 100644 partner_email_check/i18n/bg.po create mode 100644 partner_email_check/i18n/bs.po create mode 100644 partner_email_check/i18n/ca.po create mode 100644 partner_email_check/i18n/cs.po create mode 100644 partner_email_check/i18n/da.po create mode 100644 partner_email_check/i18n/de.po create mode 100644 partner_email_check/i18n/el_GR.po create mode 100644 partner_email_check/i18n/en_GB.po create mode 100644 partner_email_check/i18n/es.po create mode 100644 partner_email_check/i18n/es_CR.po create mode 100644 partner_email_check/i18n/es_EC.po create mode 100644 partner_email_check/i18n/es_MX.po create mode 100644 partner_email_check/i18n/es_VE.po create mode 100644 partner_email_check/i18n/et.po create mode 100644 partner_email_check/i18n/eu.po create mode 100644 partner_email_check/i18n/fi.po create mode 100644 partner_email_check/i18n/fr.po create mode 100644 partner_email_check/i18n/fr_CA.po create mode 100644 partner_email_check/i18n/fr_CH.po create mode 100644 partner_email_check/i18n/gl.po create mode 100644 partner_email_check/i18n/hr.po create mode 100644 partner_email_check/i18n/hr_HR.po create mode 100644 partner_email_check/i18n/hu.po create mode 100644 partner_email_check/i18n/it.po create mode 100644 partner_email_check/i18n/ja.po create mode 100644 partner_email_check/i18n/lt.po create mode 100644 partner_email_check/i18n/lv.po create mode 100644 partner_email_check/i18n/mk.po create mode 100644 partner_email_check/i18n/mn.po create mode 100644 partner_email_check/i18n/nb.po create mode 100644 partner_email_check/i18n/nb_NO.po create mode 100644 partner_email_check/i18n/nl.po create mode 100644 partner_email_check/i18n/nl_BE.po create mode 100644 partner_email_check/i18n/nl_NL.po create mode 100644 partner_email_check/i18n/pl.po create mode 100644 partner_email_check/i18n/pt.po create mode 100644 partner_email_check/i18n/pt_BR.po create mode 100644 partner_email_check/i18n/pt_PT.po create mode 100644 partner_email_check/i18n/ro.po create mode 100644 partner_email_check/i18n/ru.po create mode 100644 partner_email_check/i18n/sk.po create mode 100644 partner_email_check/i18n/sl.po create mode 100644 partner_email_check/i18n/sr@latin.po create mode 100644 partner_email_check/i18n/sv.po create mode 100644 partner_email_check/i18n/th.po create mode 100644 partner_email_check/i18n/tr.po create mode 100644 partner_email_check/i18n/tr_TR.po create mode 100644 partner_email_check/i18n/vi.po create mode 100644 partner_email_check/i18n/zh_CN.po create mode 100644 partner_email_check/i18n/zh_TW.po diff --git a/partner_email_check/i18n/am.po b/partner_email_check/i18n/am.po new file mode 100644 index 000000000..8dd7bb15f --- /dev/null +++ b/partner_email_check/i18n/am.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Amharic (https://www.transifex.com/oca/teams/23907/am/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: am\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "ተባባሪ" diff --git a/partner_email_check/i18n/ar.po b/partner_email_check/i18n/ar.po new file mode 100644 index 000000000..22eb6e55c --- /dev/null +++ b/partner_email_check/i18n/ar.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Arabic (https://www.transifex.com/oca/teams/23907/ar/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ar\n" +"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "الشريك" diff --git a/partner_email_check/i18n/bg.po b/partner_email_check/i18n/bg.po new file mode 100644 index 000000000..5a9112b6b --- /dev/null +++ b/partner_email_check/i18n/bg.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Bulgarian (https://www.transifex.com/oca/teams/23907/bg/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: bg\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Партньор" diff --git a/partner_email_check/i18n/bs.po b/partner_email_check/i18n/bs.po new file mode 100644 index 000000000..e743cfa85 --- /dev/null +++ b/partner_email_check/i18n/bs.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Bosnian (https://www.transifex.com/oca/teams/23907/bs/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: bs\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: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/ca.po b/partner_email_check/i18n/ca.po new file mode 100644 index 000000000..904b1d970 --- /dev/null +++ b/partner_email_check/i18n/ca.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Catalan (https://www.transifex.com/oca/teams/23907/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: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Empresa" diff --git a/partner_email_check/i18n/cs.po b/partner_email_check/i18n/cs.po new file mode 100644 index 000000000..0987a5a99 --- /dev/null +++ b/partner_email_check/i18n/cs.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Czech (https://www.transifex.com/oca/teams/23907/cs/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: cs\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Společník" diff --git a/partner_email_check/i18n/da.po b/partner_email_check/i18n/da.po new file mode 100644 index 000000000..4eb83bbe2 --- /dev/null +++ b/partner_email_check/i18n/da.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Danish (https://www.transifex.com/oca/teams/23907/da/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: da\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/de.po b/partner_email_check/i18n/de.po new file mode 100644 index 000000000..736a024e5 --- /dev/null +++ b/partner_email_check/i18n/de.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: German (https://www.transifex.com/oca/teams/23907/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: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/el_GR.po b/partner_email_check/i18n/el_GR.po new file mode 100644 index 000000000..7f215d018 --- /dev/null +++ b/partner_email_check/i18n/el_GR.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Greek (Greece) (https://www.transifex.com/oca/teams/23907/el_GR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: el_GR\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Συνεργάτης" diff --git a/partner_email_check/i18n/en_GB.po b/partner_email_check/i18n/en_GB.po new file mode 100644 index 000000000..b48dc2b64 --- /dev/null +++ b/partner_email_check/i18n/en_GB.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: English (United Kingdom) (https://www.transifex.com/oca/teams/23907/en_GB/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: en_GB\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/es.po b/partner_email_check/i18n/es.po new file mode 100644 index 000000000..1b7e8974e --- /dev/null +++ b/partner_email_check/i18n/es.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/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: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Empresa" diff --git a/partner_email_check/i18n/es_CR.po b/partner_email_check/i18n/es_CR.po new file mode 100644 index 000000000..ceb4d8240 --- /dev/null +++ b/partner_email_check/i18n/es_CR.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Spanish (Costa Rica) (https://www.transifex.com/oca/teams/23907/es_CR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: es_CR\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Empresa" diff --git a/partner_email_check/i18n/es_EC.po b/partner_email_check/i18n/es_EC.po new file mode 100644 index 000000000..60c39ee20 --- /dev/null +++ b/partner_email_check/i18n/es_EC.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Spanish (Ecuador) (https://www.transifex.com/oca/teams/23907/es_EC/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: es_EC\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Empresa" diff --git a/partner_email_check/i18n/es_MX.po b/partner_email_check/i18n/es_MX.po new file mode 100644 index 000000000..585f42196 --- /dev/null +++ b/partner_email_check/i18n/es_MX.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Spanish (Mexico) (https://www.transifex.com/oca/teams/23907/es_MX/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: es_MX\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Empresa" diff --git a/partner_email_check/i18n/es_VE.po b/partner_email_check/i18n/es_VE.po new file mode 100644 index 000000000..730ecf235 --- /dev/null +++ b/partner_email_check/i18n/es_VE.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Spanish (Venezuela) (https://www.transifex.com/oca/teams/23907/es_VE/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: es_VE\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Empresa" diff --git a/partner_email_check/i18n/et.po b/partner_email_check/i18n/et.po new file mode 100644 index 000000000..75b02ef4d --- /dev/null +++ b/partner_email_check/i18n/et.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Estonian (https://www.transifex.com/oca/teams/23907/et/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: et\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/eu.po b/partner_email_check/i18n/eu.po new file mode 100644 index 000000000..62ecfab72 --- /dev/null +++ b/partner_email_check/i18n/eu.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Basque (https://www.transifex.com/oca/teams/23907/eu/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: eu\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Kidea" diff --git a/partner_email_check/i18n/fi.po b/partner_email_check/i18n/fi.po new file mode 100644 index 000000000..cd05e90ac --- /dev/null +++ b/partner_email_check/i18n/fi.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Finnish (https://www.transifex.com/oca/teams/23907/fi/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: fi\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Kumppani" diff --git a/partner_email_check/i18n/fr.po b/partner_email_check/i18n/fr.po new file mode 100644 index 000000000..42584b6cf --- /dev/null +++ b/partner_email_check/i18n/fr.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: French (https://www.transifex.com/oca/teams/23907/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: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Contact" diff --git a/partner_email_check/i18n/fr_CA.po b/partner_email_check/i18n/fr_CA.po new file mode 100644 index 000000000..2f49a6b7f --- /dev/null +++ b/partner_email_check/i18n/fr_CA.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: French (Canada) (https://www.transifex.com/oca/teams/23907/fr_CA/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: fr_CA\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partenaire" diff --git a/partner_email_check/i18n/fr_CH.po b/partner_email_check/i18n/fr_CH.po new file mode 100644 index 000000000..aa4d431b9 --- /dev/null +++ b/partner_email_check/i18n/fr_CH.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: French (Switzerland) (https://www.transifex.com/oca/teams/23907/fr_CH/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: fr_CH\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partenaire" diff --git a/partner_email_check/i18n/gl.po b/partner_email_check/i18n/gl.po new file mode 100644 index 000000000..a6ed36907 --- /dev/null +++ b/partner_email_check/i18n/gl.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Galician (https://www.transifex.com/oca/teams/23907/gl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: gl\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Empresa" diff --git a/partner_email_check/i18n/hr.po b/partner_email_check/i18n/hr.po new file mode 100644 index 000000000..1dc50de20 --- /dev/null +++ b/partner_email_check/i18n/hr.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Croatian (https://www.transifex.com/oca/teams/23907/hr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: hr\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: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/hr_HR.po b/partner_email_check/i18n/hr_HR.po new file mode 100644 index 000000000..eb3ba30b8 --- /dev/null +++ b/partner_email_check/i18n/hr_HR.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Croatian (Croatia) (https://www.transifex.com/oca/teams/23907/hr_HR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: hr_HR\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: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/hu.po b/partner_email_check/i18n/hu.po new file mode 100644 index 000000000..db5f64314 --- /dev/null +++ b/partner_email_check/i18n/hu.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Hungarian (https://www.transifex.com/oca/teams/23907/hu/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: hu\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/it.po b/partner_email_check/i18n/it.po new file mode 100644 index 000000000..bda87e71b --- /dev/null +++ b/partner_email_check/i18n/it.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: it\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/ja.po b/partner_email_check/i18n/ja.po new file mode 100644 index 000000000..2b900ce72 --- /dev/null +++ b/partner_email_check/i18n/ja.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Japanese (https://www.transifex.com/oca/teams/23907/ja/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ja\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "パートナ" diff --git a/partner_email_check/i18n/lt.po b/partner_email_check/i18n/lt.po new file mode 100644 index 000000000..56c820a11 --- /dev/null +++ b/partner_email_check/i18n/lt.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Lithuanian (https://www.transifex.com/oca/teams/23907/lt/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: lt\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partneris" diff --git a/partner_email_check/i18n/lv.po b/partner_email_check/i18n/lv.po new file mode 100644 index 000000000..975149539 --- /dev/null +++ b/partner_email_check/i18n/lv.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Latvian (https://www.transifex.com/oca/teams/23907/lv/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: lv\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partneris" diff --git a/partner_email_check/i18n/mk.po b/partner_email_check/i18n/mk.po new file mode 100644 index 000000000..e654a7dbe --- /dev/null +++ b/partner_email_check/i18n/mk.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Macedonian (https://www.transifex.com/oca/teams/23907/mk/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: mk\n" +"Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Партнер" diff --git a/partner_email_check/i18n/mn.po b/partner_email_check/i18n/mn.po new file mode 100644 index 000000000..e15002d48 --- /dev/null +++ b/partner_email_check/i18n/mn.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Mongolian (https://www.transifex.com/oca/teams/23907/mn/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: mn\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Харилцагч" diff --git a/partner_email_check/i18n/nb.po b/partner_email_check/i18n/nb.po new file mode 100644 index 000000000..ff1143769 --- /dev/null +++ b/partner_email_check/i18n/nb.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Norwegian Bokmål (https://www.transifex.com/oca/teams/23907/nb/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: nb\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/nb_NO.po b/partner_email_check/i18n/nb_NO.po new file mode 100644 index 000000000..17212b099 --- /dev/null +++ b/partner_email_check/i18n/nb_NO.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Norwegian Bokmål (Norway) (https://www.transifex.com/oca/teams/23907/nb_NO/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: nb_NO\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/nl.po b/partner_email_check/i18n/nl.po new file mode 100644 index 000000000..e34a7bb5c --- /dev/null +++ b/partner_email_check/i18n/nl.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Dutch (https://www.transifex.com/oca/teams/23907/nl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: nl\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Relatie" diff --git a/partner_email_check/i18n/nl_BE.po b/partner_email_check/i18n/nl_BE.po new file mode 100644 index 000000000..eed071b2d --- /dev/null +++ b/partner_email_check/i18n/nl_BE.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Dutch (Belgium) (https://www.transifex.com/oca/teams/23907/nl_BE/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: nl_BE\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Relatie" diff --git a/partner_email_check/i18n/nl_NL.po b/partner_email_check/i18n/nl_NL.po new file mode 100644 index 000000000..6543d807d --- /dev/null +++ b/partner_email_check/i18n/nl_NL.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# Peter Hageman , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: Peter Hageman , 2017\n" +"Language-Team: Dutch (Netherlands) (https://www.transifex.com/oca/teams/23907/nl_NL/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: nl_NL\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Relatie" diff --git a/partner_email_check/i18n/pl.po b/partner_email_check/i18n/pl.po new file mode 100644 index 000000000..7d85fd2bf --- /dev/null +++ b/partner_email_check/i18n/pl.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Polish (https://www.transifex.com/oca/teams/23907/pl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pl\n" +"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/pt.po b/partner_email_check/i18n/pt.po new file mode 100644 index 000000000..34e57b4df --- /dev/null +++ b/partner_email_check/i18n/pt.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Portuguese (https://www.transifex.com/oca/teams/23907/pt/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Parceiro" diff --git a/partner_email_check/i18n/pt_BR.po b/partner_email_check/i18n/pt_BR.po new file mode 100644 index 000000000..e4889699e --- /dev/null +++ b/partner_email_check/i18n/pt_BR.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/teams/23907/pt_BR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt_BR\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Parceiro" diff --git a/partner_email_check/i18n/pt_PT.po b/partner_email_check/i18n/pt_PT.po new file mode 100644 index 000000000..d25d3290b --- /dev/null +++ b/partner_email_check/i18n/pt_PT.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# Tiago Baptista , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: Tiago Baptista , 2017\n" +"Language-Team: Portuguese (Portugal) (https://www.transifex.com/oca/teams/23907/pt_PT/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: pt_PT\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Parceiro" diff --git a/partner_email_check/i18n/ro.po b/partner_email_check/i18n/ro.po new file mode 100644 index 000000000..64d21ebd8 --- /dev/null +++ b/partner_email_check/i18n/ro.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Romanian (https://www.transifex.com/oca/teams/23907/ro/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ro\n" +"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partener" diff --git a/partner_email_check/i18n/ru.po b/partner_email_check/i18n/ru.po new file mode 100644 index 000000000..289d1ab5c --- /dev/null +++ b/partner_email_check/i18n/ru.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Russian (https://www.transifex.com/oca/teams/23907/ru/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: ru\n" +"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Контрагент" diff --git a/partner_email_check/i18n/sk.po b/partner_email_check/i18n/sk.po new file mode 100644 index 000000000..36d5a9fb2 --- /dev/null +++ b/partner_email_check/i18n/sk.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Slovak (https://www.transifex.com/oca/teams/23907/sk/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: sk\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/sl.po b/partner_email_check/i18n/sl.po new file mode 100644 index 000000000..8bd191ef4 --- /dev/null +++ b/partner_email_check/i18n/sl.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Slovenian (https://www.transifex.com/oca/teams/23907/sl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: sl\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/sr@latin.po b/partner_email_check/i18n/sr@latin.po new file mode 100644 index 000000000..7afd0b790 --- /dev/null +++ b/partner_email_check/i18n/sr@latin.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Serbian (Latin) (https://www.transifex.com/oca/teams/23907/sr%40latin/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: sr@latin\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: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Partner" diff --git a/partner_email_check/i18n/sv.po b/partner_email_check/i18n/sv.po new file mode 100644 index 000000000..e598fd837 --- /dev/null +++ b/partner_email_check/i18n/sv.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Swedish (https://www.transifex.com/oca/teams/23907/sv/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: sv\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Företag" diff --git a/partner_email_check/i18n/th.po b/partner_email_check/i18n/th.po new file mode 100644 index 000000000..8b1358f11 --- /dev/null +++ b/partner_email_check/i18n/th.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Thai (https://www.transifex.com/oca/teams/23907/th/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: th\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "พาร์ทเนอร์" diff --git a/partner_email_check/i18n/tr.po b/partner_email_check/i18n/tr.po new file mode 100644 index 000000000..eaedcce0a --- /dev/null +++ b/partner_email_check/i18n/tr.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Turkish (https://www.transifex.com/oca/teams/23907/tr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: tr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "İş Ortağı" diff --git a/partner_email_check/i18n/tr_TR.po b/partner_email_check/i18n/tr_TR.po new file mode 100644 index 000000000..a6cb2c6c9 --- /dev/null +++ b/partner_email_check/i18n/tr_TR.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Turkish (Turkey) (https://www.transifex.com/oca/teams/23907/tr_TR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: tr_TR\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Ortak" diff --git a/partner_email_check/i18n/vi.po b/partner_email_check/i18n/vi.po new file mode 100644 index 000000000..9f651b2ea --- /dev/null +++ b/partner_email_check/i18n/vi.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Vietnamese (https://www.transifex.com/oca/teams/23907/vi/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: vi\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "Đối tác" diff --git a/partner_email_check/i18n/zh_CN.po b/partner_email_check/i18n/zh_CN.po new file mode 100644 index 000000000..6e5925863 --- /dev/null +++ b/partner_email_check/i18n/zh_CN.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Chinese (China) (https://www.transifex.com/oca/teams/23907/zh_CN/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: zh_CN\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "业务伙伴" diff --git a/partner_email_check/i18n/zh_TW.po b/partner_email_check/i18n/zh_TW.po new file mode 100644 index 000000000..abf1a398a --- /dev/null +++ b/partner_email_check/i18n/zh_TW.po @@ -0,0 +1,30 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +# Translators: +# OCA Transbot , 2017 +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-12-26 15:33+0000\n" +"PO-Revision-Date: 2017-12-26 15:33+0000\n" +"Last-Translator: OCA Transbot , 2017\n" +"Language-Team: Chinese (Taiwan) (https://www.transifex.com/oca/teams/23907/zh_TW/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Language: zh_TW\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:36 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Partner" +msgstr "夥伴" From bab06e4d6c11ad61590c3521183b5343b6a3ccae Mon Sep 17 00:00:00 2001 From: huy Date: Thu, 4 Jan 2018 10:00:10 +0700 Subject: [PATCH 03/21] Migrate module partner_email_check to version 11.0 --- partner_email_check/__init__.py | 1 - partner_email_check/__manifest__.py | 3 +- partner_email_check/i18n/am.po | 30 ------------------- partner_email_check/i18n/ar.po | 30 ------------------- partner_email_check/i18n/bg.po | 30 ------------------- partner_email_check/i18n/bs.po | 30 ------------------- partner_email_check/i18n/ca.po | 30 ------------------- partner_email_check/i18n/cs.po | 30 ------------------- partner_email_check/i18n/da.po | 30 ------------------- partner_email_check/i18n/de.po | 30 ------------------- partner_email_check/i18n/el_GR.po | 30 ------------------- partner_email_check/i18n/en_GB.po | 30 ------------------- partner_email_check/i18n/es.po | 30 ------------------- partner_email_check/i18n/es_CR.po | 30 ------------------- partner_email_check/i18n/es_EC.po | 30 ------------------- partner_email_check/i18n/es_MX.po | 30 ------------------- partner_email_check/i18n/es_VE.po | 30 ------------------- partner_email_check/i18n/et.po | 30 ------------------- partner_email_check/i18n/eu.po | 30 ------------------- partner_email_check/i18n/fi.po | 30 ------------------- partner_email_check/i18n/fr.po | 30 ------------------- partner_email_check/i18n/fr_CA.po | 30 ------------------- partner_email_check/i18n/fr_CH.po | 30 ------------------- partner_email_check/i18n/gl.po | 30 ------------------- partner_email_check/i18n/hr.po | 30 ------------------- partner_email_check/i18n/hr_HR.po | 30 ------------------- partner_email_check/i18n/hu.po | 30 ------------------- partner_email_check/i18n/it.po | 30 ------------------- partner_email_check/i18n/ja.po | 30 ------------------- partner_email_check/i18n/lt.po | 30 ------------------- partner_email_check/i18n/lv.po | 30 ------------------- partner_email_check/i18n/mk.po | 30 ------------------- partner_email_check/i18n/mn.po | 30 ------------------- partner_email_check/i18n/nb.po | 30 ------------------- partner_email_check/i18n/nb_NO.po | 30 ------------------- partner_email_check/i18n/nl.po | 30 ------------------- partner_email_check/i18n/nl_BE.po | 30 ------------------- partner_email_check/i18n/nl_NL.po | 30 ------------------- partner_email_check/i18n/pl.po | 30 ------------------- partner_email_check/i18n/pt.po | 30 ------------------- partner_email_check/i18n/pt_BR.po | 30 ------------------- partner_email_check/i18n/pt_PT.po | 30 ------------------- partner_email_check/i18n/ro.po | 30 ------------------- partner_email_check/i18n/ru.po | 30 ------------------- partner_email_check/i18n/sk.po | 30 ------------------- partner_email_check/i18n/sl.po | 30 ------------------- partner_email_check/i18n/sr@latin.po | 30 ------------------- partner_email_check/i18n/sv.po | 30 ------------------- partner_email_check/i18n/th.po | 30 ------------------- partner_email_check/i18n/tr.po | 30 ------------------- partner_email_check/i18n/tr_TR.po | 30 ------------------- partner_email_check/i18n/vi.po | 30 ------------------- partner_email_check/i18n/zh_CN.po | 30 ------------------- partner_email_check/i18n/zh_TW.po | 30 ------------------- partner_email_check/models/__init__.py | 1 - partner_email_check/models/res_partner.py | 1 - partner_email_check/tests/__init__.py | 1 - .../tests/test_partner_email_check.py | 1 - 58 files changed, 1 insertion(+), 1567 deletions(-) delete mode 100644 partner_email_check/i18n/am.po delete mode 100644 partner_email_check/i18n/ar.po delete mode 100644 partner_email_check/i18n/bg.po delete mode 100644 partner_email_check/i18n/bs.po delete mode 100644 partner_email_check/i18n/ca.po delete mode 100644 partner_email_check/i18n/cs.po delete mode 100644 partner_email_check/i18n/da.po delete mode 100644 partner_email_check/i18n/de.po delete mode 100644 partner_email_check/i18n/el_GR.po delete mode 100644 partner_email_check/i18n/en_GB.po delete mode 100644 partner_email_check/i18n/es.po delete mode 100644 partner_email_check/i18n/es_CR.po delete mode 100644 partner_email_check/i18n/es_EC.po delete mode 100644 partner_email_check/i18n/es_MX.po delete mode 100644 partner_email_check/i18n/es_VE.po delete mode 100644 partner_email_check/i18n/et.po delete mode 100644 partner_email_check/i18n/eu.po delete mode 100644 partner_email_check/i18n/fi.po delete mode 100644 partner_email_check/i18n/fr.po delete mode 100644 partner_email_check/i18n/fr_CA.po delete mode 100644 partner_email_check/i18n/fr_CH.po delete mode 100644 partner_email_check/i18n/gl.po delete mode 100644 partner_email_check/i18n/hr.po delete mode 100644 partner_email_check/i18n/hr_HR.po delete mode 100644 partner_email_check/i18n/hu.po delete mode 100644 partner_email_check/i18n/it.po delete mode 100644 partner_email_check/i18n/ja.po delete mode 100644 partner_email_check/i18n/lt.po delete mode 100644 partner_email_check/i18n/lv.po delete mode 100644 partner_email_check/i18n/mk.po delete mode 100644 partner_email_check/i18n/mn.po delete mode 100644 partner_email_check/i18n/nb.po delete mode 100644 partner_email_check/i18n/nb_NO.po delete mode 100644 partner_email_check/i18n/nl.po delete mode 100644 partner_email_check/i18n/nl_BE.po delete mode 100644 partner_email_check/i18n/nl_NL.po delete mode 100644 partner_email_check/i18n/pl.po delete mode 100644 partner_email_check/i18n/pt.po delete mode 100644 partner_email_check/i18n/pt_BR.po delete mode 100644 partner_email_check/i18n/pt_PT.po delete mode 100644 partner_email_check/i18n/ro.po delete mode 100644 partner_email_check/i18n/ru.po delete mode 100644 partner_email_check/i18n/sk.po delete mode 100644 partner_email_check/i18n/sl.po delete mode 100644 partner_email_check/i18n/sr@latin.po delete mode 100644 partner_email_check/i18n/sv.po delete mode 100644 partner_email_check/i18n/th.po delete mode 100644 partner_email_check/i18n/tr.po delete mode 100644 partner_email_check/i18n/tr_TR.po delete mode 100644 partner_email_check/i18n/vi.po delete mode 100644 partner_email_check/i18n/zh_CN.po delete mode 100644 partner_email_check/i18n/zh_TW.po diff --git a/partner_email_check/__init__.py b/partner_email_check/__init__.py index 0ba704c16..08f2caeae 100644 --- a/partner_email_check/__init__.py +++ b/partner_email_check/__init__.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # Copyright 2017 Komit # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). diff --git a/partner_email_check/__manifest__.py b/partner_email_check/__manifest__.py index 74b6ac7a5..17ae6eb4a 100644 --- a/partner_email_check/__manifest__.py +++ b/partner_email_check/__manifest__.py @@ -1,10 +1,9 @@ -# -*- coding: utf-8 -*- # Copyright 2017 Komit # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). { 'name': 'Email Format Checker', - 'version': '10.0.1.0.0', + 'version': '11.0.1.0.0', 'summary': 'Validate email address field', 'author': "Komit, Odoo Community Association (OCA)", 'website': 'http://komit-consulting.com', diff --git a/partner_email_check/i18n/am.po b/partner_email_check/i18n/am.po deleted file mode 100644 index 8dd7bb15f..000000000 --- a/partner_email_check/i18n/am.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Amharic (https://www.transifex.com/oca/teams/23907/am/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: am\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "ተባባሪ" diff --git a/partner_email_check/i18n/ar.po b/partner_email_check/i18n/ar.po deleted file mode 100644 index 22eb6e55c..000000000 --- a/partner_email_check/i18n/ar.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Arabic (https://www.transifex.com/oca/teams/23907/ar/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: ar\n" -"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "الشريك" diff --git a/partner_email_check/i18n/bg.po b/partner_email_check/i18n/bg.po deleted file mode 100644 index 5a9112b6b..000000000 --- a/partner_email_check/i18n/bg.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Bulgarian (https://www.transifex.com/oca/teams/23907/bg/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: bg\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Партньор" diff --git a/partner_email_check/i18n/bs.po b/partner_email_check/i18n/bs.po deleted file mode 100644 index e743cfa85..000000000 --- a/partner_email_check/i18n/bs.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Bosnian (https://www.transifex.com/oca/teams/23907/bs/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: bs\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: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/ca.po b/partner_email_check/i18n/ca.po deleted file mode 100644 index 904b1d970..000000000 --- a/partner_email_check/i18n/ca.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Catalan (https://www.transifex.com/oca/teams/23907/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: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Empresa" diff --git a/partner_email_check/i18n/cs.po b/partner_email_check/i18n/cs.po deleted file mode 100644 index 0987a5a99..000000000 --- a/partner_email_check/i18n/cs.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Czech (https://www.transifex.com/oca/teams/23907/cs/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: cs\n" -"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Společník" diff --git a/partner_email_check/i18n/da.po b/partner_email_check/i18n/da.po deleted file mode 100644 index 4eb83bbe2..000000000 --- a/partner_email_check/i18n/da.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Danish (https://www.transifex.com/oca/teams/23907/da/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: da\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/de.po b/partner_email_check/i18n/de.po deleted file mode 100644 index 736a024e5..000000000 --- a/partner_email_check/i18n/de.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: German (https://www.transifex.com/oca/teams/23907/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: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/el_GR.po b/partner_email_check/i18n/el_GR.po deleted file mode 100644 index 7f215d018..000000000 --- a/partner_email_check/i18n/el_GR.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Greek (Greece) (https://www.transifex.com/oca/teams/23907/el_GR/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: el_GR\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Συνεργάτης" diff --git a/partner_email_check/i18n/en_GB.po b/partner_email_check/i18n/en_GB.po deleted file mode 100644 index b48dc2b64..000000000 --- a/partner_email_check/i18n/en_GB.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: English (United Kingdom) (https://www.transifex.com/oca/teams/23907/en_GB/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: en_GB\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/es.po b/partner_email_check/i18n/es.po deleted file mode 100644 index 1b7e8974e..000000000 --- a/partner_email_check/i18n/es.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Spanish (https://www.transifex.com/oca/teams/23907/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: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Empresa" diff --git a/partner_email_check/i18n/es_CR.po b/partner_email_check/i18n/es_CR.po deleted file mode 100644 index ceb4d8240..000000000 --- a/partner_email_check/i18n/es_CR.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Spanish (Costa Rica) (https://www.transifex.com/oca/teams/23907/es_CR/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: es_CR\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Empresa" diff --git a/partner_email_check/i18n/es_EC.po b/partner_email_check/i18n/es_EC.po deleted file mode 100644 index 60c39ee20..000000000 --- a/partner_email_check/i18n/es_EC.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Spanish (Ecuador) (https://www.transifex.com/oca/teams/23907/es_EC/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: es_EC\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Empresa" diff --git a/partner_email_check/i18n/es_MX.po b/partner_email_check/i18n/es_MX.po deleted file mode 100644 index 585f42196..000000000 --- a/partner_email_check/i18n/es_MX.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Spanish (Mexico) (https://www.transifex.com/oca/teams/23907/es_MX/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: es_MX\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Empresa" diff --git a/partner_email_check/i18n/es_VE.po b/partner_email_check/i18n/es_VE.po deleted file mode 100644 index 730ecf235..000000000 --- a/partner_email_check/i18n/es_VE.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Spanish (Venezuela) (https://www.transifex.com/oca/teams/23907/es_VE/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: es_VE\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Empresa" diff --git a/partner_email_check/i18n/et.po b/partner_email_check/i18n/et.po deleted file mode 100644 index 75b02ef4d..000000000 --- a/partner_email_check/i18n/et.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Estonian (https://www.transifex.com/oca/teams/23907/et/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: et\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/eu.po b/partner_email_check/i18n/eu.po deleted file mode 100644 index 62ecfab72..000000000 --- a/partner_email_check/i18n/eu.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Basque (https://www.transifex.com/oca/teams/23907/eu/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: eu\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Kidea" diff --git a/partner_email_check/i18n/fi.po b/partner_email_check/i18n/fi.po deleted file mode 100644 index cd05e90ac..000000000 --- a/partner_email_check/i18n/fi.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Finnish (https://www.transifex.com/oca/teams/23907/fi/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: fi\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Kumppani" diff --git a/partner_email_check/i18n/fr.po b/partner_email_check/i18n/fr.po deleted file mode 100644 index 42584b6cf..000000000 --- a/partner_email_check/i18n/fr.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: French (https://www.transifex.com/oca/teams/23907/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: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Contact" diff --git a/partner_email_check/i18n/fr_CA.po b/partner_email_check/i18n/fr_CA.po deleted file mode 100644 index 2f49a6b7f..000000000 --- a/partner_email_check/i18n/fr_CA.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: French (Canada) (https://www.transifex.com/oca/teams/23907/fr_CA/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: fr_CA\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partenaire" diff --git a/partner_email_check/i18n/fr_CH.po b/partner_email_check/i18n/fr_CH.po deleted file mode 100644 index aa4d431b9..000000000 --- a/partner_email_check/i18n/fr_CH.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: French (Switzerland) (https://www.transifex.com/oca/teams/23907/fr_CH/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: fr_CH\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partenaire" diff --git a/partner_email_check/i18n/gl.po b/partner_email_check/i18n/gl.po deleted file mode 100644 index a6ed36907..000000000 --- a/partner_email_check/i18n/gl.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Galician (https://www.transifex.com/oca/teams/23907/gl/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: gl\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Empresa" diff --git a/partner_email_check/i18n/hr.po b/partner_email_check/i18n/hr.po deleted file mode 100644 index 1dc50de20..000000000 --- a/partner_email_check/i18n/hr.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Croatian (https://www.transifex.com/oca/teams/23907/hr/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: hr\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: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/hr_HR.po b/partner_email_check/i18n/hr_HR.po deleted file mode 100644 index eb3ba30b8..000000000 --- a/partner_email_check/i18n/hr_HR.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Croatian (Croatia) (https://www.transifex.com/oca/teams/23907/hr_HR/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: hr_HR\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: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/hu.po b/partner_email_check/i18n/hu.po deleted file mode 100644 index db5f64314..000000000 --- a/partner_email_check/i18n/hu.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Hungarian (https://www.transifex.com/oca/teams/23907/hu/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: hu\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/it.po b/partner_email_check/i18n/it.po deleted file mode 100644 index bda87e71b..000000000 --- a/partner_email_check/i18n/it.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Italian (https://www.transifex.com/oca/teams/23907/it/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: it\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/ja.po b/partner_email_check/i18n/ja.po deleted file mode 100644 index 2b900ce72..000000000 --- a/partner_email_check/i18n/ja.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Japanese (https://www.transifex.com/oca/teams/23907/ja/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: ja\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "パートナ" diff --git a/partner_email_check/i18n/lt.po b/partner_email_check/i18n/lt.po deleted file mode 100644 index 56c820a11..000000000 --- a/partner_email_check/i18n/lt.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Lithuanian (https://www.transifex.com/oca/teams/23907/lt/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: lt\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partneris" diff --git a/partner_email_check/i18n/lv.po b/partner_email_check/i18n/lv.po deleted file mode 100644 index 975149539..000000000 --- a/partner_email_check/i18n/lv.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Latvian (https://www.transifex.com/oca/teams/23907/lv/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: lv\n" -"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partneris" diff --git a/partner_email_check/i18n/mk.po b/partner_email_check/i18n/mk.po deleted file mode 100644 index e654a7dbe..000000000 --- a/partner_email_check/i18n/mk.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Macedonian (https://www.transifex.com/oca/teams/23907/mk/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: mk\n" -"Plural-Forms: nplurals=2; plural=(n % 10 == 1 && n % 100 != 11) ? 0 : 1;\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Партнер" diff --git a/partner_email_check/i18n/mn.po b/partner_email_check/i18n/mn.po deleted file mode 100644 index e15002d48..000000000 --- a/partner_email_check/i18n/mn.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Mongolian (https://www.transifex.com/oca/teams/23907/mn/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: mn\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Харилцагч" diff --git a/partner_email_check/i18n/nb.po b/partner_email_check/i18n/nb.po deleted file mode 100644 index ff1143769..000000000 --- a/partner_email_check/i18n/nb.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Norwegian Bokmål (https://www.transifex.com/oca/teams/23907/nb/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: nb\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/nb_NO.po b/partner_email_check/i18n/nb_NO.po deleted file mode 100644 index 17212b099..000000000 --- a/partner_email_check/i18n/nb_NO.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Norwegian Bokmål (Norway) (https://www.transifex.com/oca/teams/23907/nb_NO/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: nb_NO\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/nl.po b/partner_email_check/i18n/nl.po deleted file mode 100644 index e34a7bb5c..000000000 --- a/partner_email_check/i18n/nl.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Dutch (https://www.transifex.com/oca/teams/23907/nl/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: nl\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Relatie" diff --git a/partner_email_check/i18n/nl_BE.po b/partner_email_check/i18n/nl_BE.po deleted file mode 100644 index eed071b2d..000000000 --- a/partner_email_check/i18n/nl_BE.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Dutch (Belgium) (https://www.transifex.com/oca/teams/23907/nl_BE/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: nl_BE\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Relatie" diff --git a/partner_email_check/i18n/nl_NL.po b/partner_email_check/i18n/nl_NL.po deleted file mode 100644 index 6543d807d..000000000 --- a/partner_email_check/i18n/nl_NL.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# Peter Hageman , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: Peter Hageman , 2017\n" -"Language-Team: Dutch (Netherlands) (https://www.transifex.com/oca/teams/23907/nl_NL/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: nl_NL\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Relatie" diff --git a/partner_email_check/i18n/pl.po b/partner_email_check/i18n/pl.po deleted file mode 100644 index 7d85fd2bf..000000000 --- a/partner_email_check/i18n/pl.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Polish (https://www.transifex.com/oca/teams/23907/pl/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: pl\n" -"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/pt.po b/partner_email_check/i18n/pt.po deleted file mode 100644 index 34e57b4df..000000000 --- a/partner_email_check/i18n/pt.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Portuguese (https://www.transifex.com/oca/teams/23907/pt/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: pt\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Parceiro" diff --git a/partner_email_check/i18n/pt_BR.po b/partner_email_check/i18n/pt_BR.po deleted file mode 100644 index e4889699e..000000000 --- a/partner_email_check/i18n/pt_BR.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Portuguese (Brazil) (https://www.transifex.com/oca/teams/23907/pt_BR/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: pt_BR\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Parceiro" diff --git a/partner_email_check/i18n/pt_PT.po b/partner_email_check/i18n/pt_PT.po deleted file mode 100644 index d25d3290b..000000000 --- a/partner_email_check/i18n/pt_PT.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# Tiago Baptista , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: Tiago Baptista , 2017\n" -"Language-Team: Portuguese (Portugal) (https://www.transifex.com/oca/teams/23907/pt_PT/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: pt_PT\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Parceiro" diff --git a/partner_email_check/i18n/ro.po b/partner_email_check/i18n/ro.po deleted file mode 100644 index 64d21ebd8..000000000 --- a/partner_email_check/i18n/ro.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Romanian (https://www.transifex.com/oca/teams/23907/ro/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: ro\n" -"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partener" diff --git a/partner_email_check/i18n/ru.po b/partner_email_check/i18n/ru.po deleted file mode 100644 index 289d1ab5c..000000000 --- a/partner_email_check/i18n/ru.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Russian (https://www.transifex.com/oca/teams/23907/ru/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: ru\n" -"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Контрагент" diff --git a/partner_email_check/i18n/sk.po b/partner_email_check/i18n/sk.po deleted file mode 100644 index 36d5a9fb2..000000000 --- a/partner_email_check/i18n/sk.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Slovak (https://www.transifex.com/oca/teams/23907/sk/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: sk\n" -"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/sl.po b/partner_email_check/i18n/sl.po deleted file mode 100644 index 8bd191ef4..000000000 --- a/partner_email_check/i18n/sl.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Slovenian (https://www.transifex.com/oca/teams/23907/sl/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: sl\n" -"Plural-Forms: nplurals=4; plural=(n%100==1 ? 0 : n%100==2 ? 1 : n%100==3 || n%100==4 ? 2 : 3);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/sr@latin.po b/partner_email_check/i18n/sr@latin.po deleted file mode 100644 index 7afd0b790..000000000 --- a/partner_email_check/i18n/sr@latin.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Serbian (Latin) (https://www.transifex.com/oca/teams/23907/sr%40latin/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: sr@latin\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: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Partner" diff --git a/partner_email_check/i18n/sv.po b/partner_email_check/i18n/sv.po deleted file mode 100644 index e598fd837..000000000 --- a/partner_email_check/i18n/sv.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Swedish (https://www.transifex.com/oca/teams/23907/sv/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: sv\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Företag" diff --git a/partner_email_check/i18n/th.po b/partner_email_check/i18n/th.po deleted file mode 100644 index 8b1358f11..000000000 --- a/partner_email_check/i18n/th.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Thai (https://www.transifex.com/oca/teams/23907/th/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: th\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "พาร์ทเนอร์" diff --git a/partner_email_check/i18n/tr.po b/partner_email_check/i18n/tr.po deleted file mode 100644 index eaedcce0a..000000000 --- a/partner_email_check/i18n/tr.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Turkish (https://www.transifex.com/oca/teams/23907/tr/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: tr\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "İş Ortağı" diff --git a/partner_email_check/i18n/tr_TR.po b/partner_email_check/i18n/tr_TR.po deleted file mode 100644 index a6cb2c6c9..000000000 --- a/partner_email_check/i18n/tr_TR.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Turkish (Turkey) (https://www.transifex.com/oca/teams/23907/tr_TR/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: tr_TR\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Ortak" diff --git a/partner_email_check/i18n/vi.po b/partner_email_check/i18n/vi.po deleted file mode 100644 index 9f651b2ea..000000000 --- a/partner_email_check/i18n/vi.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Vietnamese (https://www.transifex.com/oca/teams/23907/vi/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: vi\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "Đối tác" diff --git a/partner_email_check/i18n/zh_CN.po b/partner_email_check/i18n/zh_CN.po deleted file mode 100644 index 6e5925863..000000000 --- a/partner_email_check/i18n/zh_CN.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Chinese (China) (https://www.transifex.com/oca/teams/23907/zh_CN/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: zh_CN\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "业务伙伴" diff --git a/partner_email_check/i18n/zh_TW.po b/partner_email_check/i18n/zh_TW.po deleted file mode 100644 index abf1a398a..000000000 --- a/partner_email_check/i18n/zh_TW.po +++ /dev/null @@ -1,30 +0,0 @@ -# Translation of Odoo Server. -# This file contains the translation of the following modules: -# * partner_email_check -# -# Translators: -# OCA Transbot , 2017 -msgid "" -msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-12-26 15:33+0000\n" -"PO-Revision-Date: 2017-12-26 15:33+0000\n" -"Last-Translator: OCA Transbot , 2017\n" -"Language-Team: Chinese (Taiwan) (https://www.transifex.com/oca/teams/23907/zh_TW/)\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: \n" -"Language: zh_TW\n" -"Plural-Forms: nplurals=1; plural=0;\n" - -#. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:36 -#, python-format -msgid "Invalid e-mail!" -msgstr "" - -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_partner -msgid "Partner" -msgstr "夥伴" diff --git a/partner_email_check/models/__init__.py b/partner_email_check/models/__init__.py index 280addc7c..178e231f4 100644 --- a/partner_email_check/models/__init__.py +++ b/partner_email_check/models/__init__.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # Copyright 2017 Komit # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). diff --git a/partner_email_check/models/res_partner.py b/partner_email_check/models/res_partner.py index afb3d47ae..0395ad615 100644 --- a/partner_email_check/models/res_partner.py +++ b/partner_email_check/models/res_partner.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # Copyright 2017 Komit # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). diff --git a/partner_email_check/tests/__init__.py b/partner_email_check/tests/__init__.py index 413174026..2984d6742 100644 --- a/partner_email_check/tests/__init__.py +++ b/partner_email_check/tests/__init__.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # Copyright 2017 Komit # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). diff --git a/partner_email_check/tests/test_partner_email_check.py b/partner_email_check/tests/test_partner_email_check.py index 6050f3ad4..ca2293637 100644 --- a/partner_email_check/tests/test_partner_email_check.py +++ b/partner_email_check/tests/test_partner_email_check.py @@ -1,4 +1,3 @@ -# -*- coding: utf-8 -*- # Copyright 2017 Komit # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). From 4a188586d7b363b89f56c6c556e28eb6e1cb2ecc Mon Sep 17 00:00:00 2001 From: "dat.vh" Date: Tue, 23 Apr 2019 10:50:08 +0700 Subject: [PATCH 04/21] Remove copyright in init + ref code. --- partner_email_check/__init__.py | 3 +-- partner_email_check/__manifest__.py | 6 +++--- partner_email_check/models/__init__.py | 3 +-- partner_email_check/models/res_partner.py | 7 +++---- partner_email_check/tests/__init__.py | 3 +-- partner_email_check/tests/test_partner_email_check.py | 4 ++-- 6 files changed, 11 insertions(+), 15 deletions(-) diff --git a/partner_email_check/__init__.py b/partner_email_check/__init__.py index 08f2caeae..31660d6a9 100644 --- a/partner_email_check/__init__.py +++ b/partner_email_check/__init__.py @@ -1,4 +1,3 @@ -# Copyright 2017 Komit -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). from . import models diff --git a/partner_email_check/__manifest__.py b/partner_email_check/__manifest__.py index 17ae6eb4a..b7bf9c00f 100644 --- a/partner_email_check/__manifest__.py +++ b/partner_email_check/__manifest__.py @@ -1,12 +1,12 @@ -# Copyright 2017 Komit -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +# Copyright 2019 Komit +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). { 'name': 'Email Format Checker', 'version': '11.0.1.0.0', 'summary': 'Validate email address field', 'author': "Komit, Odoo Community Association (OCA)", - 'website': 'http://komit-consulting.com', + 'website': 'https://github.com/OCA/partner-contact', 'category': 'Tools', 'depends': ['base'], 'installable': True, diff --git a/partner_email_check/models/__init__.py b/partner_email_check/models/__init__.py index 178e231f4..c6cc3b329 100644 --- a/partner_email_check/models/__init__.py +++ b/partner_email_check/models/__init__.py @@ -1,4 +1,3 @@ -# Copyright 2017 Komit -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). from . import res_partner diff --git a/partner_email_check/models/res_partner.py b/partner_email_check/models/res_partner.py index 0395ad615..6e47d5c2d 100644 --- a/partner_email_check/models/res_partner.py +++ b/partner_email_check/models/res_partner.py @@ -1,5 +1,5 @@ -# Copyright 2017 Komit -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +# Copyright 2019 Komit +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). import logging from odoo import api, models, _ @@ -31,5 +31,4 @@ class ResPartner(models.Model): def email_check(self, email): if validate_email(email): return True - else: - raise UserError(_('Invalid e-mail!')) + raise UserError(_('Invalid e-mail!')) diff --git a/partner_email_check/tests/__init__.py b/partner_email_check/tests/__init__.py index 2984d6742..5f0137fa7 100644 --- a/partner_email_check/tests/__init__.py +++ b/partner_email_check/tests/__init__.py @@ -1,4 +1,3 @@ -# Copyright 2017 Komit -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). from . import test_partner_email_check diff --git a/partner_email_check/tests/test_partner_email_check.py b/partner_email_check/tests/test_partner_email_check.py index ca2293637..5a9cea843 100644 --- a/partner_email_check/tests/test_partner_email_check.py +++ b/partner_email_check/tests/test_partner_email_check.py @@ -1,5 +1,5 @@ -# Copyright 2017 Komit -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +# Copyright 2019 Komit +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). from odoo.exceptions import ValidationError from odoo.tests.common import TransactionCase From e5295f45aa3d1214ddb7e477fda24ac988702e62 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Tue, 23 Apr 2019 06:31:12 +0000 Subject: [PATCH 05/21] [ADD] icon.png --- partner_email_check/static/description/icon.png | Bin 0 -> 9455 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 partner_email_check/static/description/icon.png diff --git a/partner_email_check/static/description/icon.png b/partner_email_check/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 zcmW++2RxMjAAjx~&dlBk9S+%}OXg)AGE&Cb*&}d0jUxM@u(PQx^-s)697TX`ehR4?GS^qbkof1cslKgkU)h65qZ9Oc=ml_0temigYLJfnz{IDzUf>bGs4N!v3=Z3jMq&A#7%rM5eQ#dc?k~! zVpnB`o+K7|Al`Q_U;eD$B zfJtP*jH`siUq~{KE)`jP2|#TUEFGRryE2`i0**z#*^6~AI|YzIWy$Cu#CSLW3q=GA z6`?GZymC;dCPk~rBS%eCb`5OLr;RUZ;D`}um=H)BfVIq%7VhiMr)_#G0N#zrNH|__ zc+blN2UAB0=617@>_u;MPHN;P;N#YoE=)R#i$k_`UAA>WWCcEVMh~L_ zj--gtp&|K1#58Yz*AHCTMziU1Jzt_jG0I@qAOHsk$2}yTmVkBp_eHuY$A9)>P6o~I z%aQ?!(GqeQ-Y+b0I(m9pwgi(IIZZzsbMv+9w{PFtd_<_(LA~0H(xz{=FhLB@(1&qHA5EJw1>>=%q2f&^X>IQ{!GJ4e9U z&KlB)z(84HmNgm2hg2C0>WM{E(DdPr+EeU_N@57;PC2&DmGFW_9kP&%?X4}+xWi)( z;)z%wI5>D4a*5XwD)P--sPkoY(a~WBw;E~AW`Yue4kFa^LM3X`8x|}ZUeMnqr}>kH zG%WWW>3ml$Yez?i%)2pbKPI7?5o?hydokgQyZsNEr{a|mLdt;X2TX(#B1j35xPnPW z*bMSSOauW>o;*=kO8ojw91VX!qoOQb)zHJ!odWB}d+*K?#sY_jqPdg{Sm2HdYzdEx zOGVPhVRTGPtv0o}RfVP;Nd(|CB)I;*t&QO8h zFfekr30S!-LHmV_Su-W+rEwYXJ^;6&3|L$mMC8*bQptyOo9;>Qb9Q9`ySe3%V$A*9 zeKEe+b0{#KWGp$F+tga)0RtI)nhMa-K@JS}2krK~n8vJ=Ngm?R!9G<~RyuU0d?nz# z-5EK$o(!F?hmX*2Yt6+coY`6jGbb7tF#6nHA zuKk=GGJ;ZwON1iAfG$E#Y7MnZVmrY|j0eVI(DN_MNFJmyZ|;w4tf@=CCDZ#5N_0K= z$;R~bbk?}TpfDjfB&aiQ$VA}s?P}xPERJG{kxk5~R`iRS(SK5d+Xs9swCozZISbnS zk!)I0>t=A<-^z(cmSFz3=jZ23u13X><0b)P)^1T_))Kr`e!-pb#q&J*Q`p+B6la%C zuVl&0duN<;uOsB3%T9Fp8t{ED108<+W(nOZd?gDnfNBC3>M8WE61$So|P zVvqH0SNtDTcsUdzaMDpT=Ty0pDHHNL@Z0w$Y`XO z2M-_r1S+GaH%pz#Uy0*w$Vdl=X=rQXEzO}d6J^R6zjM1u&c9vYLvLp?W7w(?np9x1 zE_0JSAJCPB%i7p*Wvg)pn5T`8k3-uR?*NT|J`eS#_#54p>!p(mLDvmc-3o0mX*mp_ zN*AeS<>#^-{S%W<*mz^!X$w_2dHWpcJ6^j64qFBft-o}o_Vx80o0>}Du;>kLts;$8 zC`7q$QI(dKYG`Wa8#wl@V4jVWBRGQ@1dr-hstpQL)Tl+aqVpGpbSfN>5i&QMXfiZ> zaA?T1VGe?rpQ@;+pkrVdd{klI&jVS@I5_iz!=UMpTsa~mBga?1r}aRBm1WS;TT*s0f0lY=JBl66Upy)-k4J}lh=P^8(SXk~0xW=T9v*B|gzIhN z>qsO7dFd~mgxAy4V?&)=5ieYq?zi?ZEoj)&2o)RLy=@hbCRcfT5jigwtQGE{L*8<@Yd{zg;CsL5mvzfDY}P-wos_6PfprFVaeqNE%h zKZhLtcQld;ZD+>=nqN~>GvROfueSzJD&BE*}XfU|H&(FssBqY=hPCt`d zH?@s2>I(|;fcW&YM6#V#!kUIP8$Nkdh0A(bEVj``-AAyYgwY~jB zT|I7Bf@%;7aL7Wf4dZ%VqF$eiaC38OV6oy3Z#TER2G+fOCd9Iaoy6aLYbPTN{XRPz z;U!V|vBf%H!}52L2gH_+j;`bTcQRXB+y9onc^wLm5wi3-Be}U>k_u>2Eg$=k!(l@I zcCg+flakT2Nej3i0yn+g+}%NYb?ta;R?(g5SnwsQ49U8Wng8d|{B+lyRcEDvR3+`O{zfmrmvFrL6acVP%yG98X zo&+VBg@px@i)%o?dG(`T;n*$S5*rnyiR#=wW}}GsAcfyQpE|>a{=$Hjg=-*_K;UtD z#z-)AXwSRY?OPefw^iI+ z)AXz#PfEjlwTes|_{sB?4(O@fg0AJ^g8gP}ex9Ucf*@_^J(s_5jJV}c)s$`Myn|Kd z$6>}#q^n{4vN@+Os$m7KV+`}c%4)4pv@06af4-x5#wj!KKb%caK{A&Y#Rfs z-po?Dcb1({W=6FKIUirH&(yg=*6aLCekcKwyfK^JN5{wcA3nhO(o}SK#!CINhI`-I z1)6&n7O&ZmyFMuNwvEic#IiOAwNkR=u5it{B9n2sAJV5pNhar=j5`*N!Na;c7g!l$ z3aYBqUkqqTJ=Re-;)s!EOeij=7SQZ3Hq}ZRds%IM*PtM$wV z@;rlc*NRK7i3y5BETSKuumEN`Xu_8GP1Ri=OKQ$@I^ko8>H6)4rjiG5{VBM>B|%`&&s^)jS|-_95&yc=GqjNo{zFkw%%HHhS~e=s zD#sfS+-?*t|J!+ozP6KvtOl!R)@@-z24}`9{QaVLD^9VCSR2b`b!KC#o;Ki<+wXB6 zx3&O0LOWcg4&rv4QG0)4yb}7BFSEg~=IR5#ZRj8kg}dS7_V&^%#Do==#`u zpy6{ox?jWuR(;pg+f@mT>#HGWHAJRRDDDv~@(IDw&R>9643kK#HN`!1vBJHnC+RM&yIh8{gG2q zA%e*U3|N0XSRa~oX-3EAneep)@{h2vvd3Xvy$7og(sayr@95+e6~Xvi1tUqnIxoIH zVWo*OwYElb#uyW{Imam6f2rGbjR!Y3`#gPqkv57dB6K^wRGxc9B(t|aYDGS=m$&S!NmCtrMMaUg(c zc2qC=2Z`EEFMW-me5B)24AqF*bV5Dr-M5ig(l-WPS%CgaPzs6p_gnCIvTJ=Y<6!gT zVt@AfYCzjjsMEGi=rDQHo0yc;HqoRNnNFeWZgcm?f;cp(6CNylj36DoL(?TS7eU#+ z7&mfr#y))+CJOXQKUMZ7QIdS9@#-}7y2K1{8)cCt0~-X0O!O?Qx#E4Og+;A2SjalQ zs7r?qn0H044=sDN$SRG$arw~n=+T_DNdSrarmu)V6@|?1-ZB#hRn`uilTGPJ@fqEy zGt(f0B+^JDP&f=r{#Y_wi#AVDf-y!RIXU^0jXsFpf>=Ji*TeqSY!H~AMbJdCGLhC) zn7Rx+sXw6uYj;WRYrLd^5IZq@6JI1C^YkgnedZEYy<&4(z%Q$5yv#Boo{AH8n$a zhb4Y3PWdr269&?V%uI$xMcUrMzl=;w<_nm*qr=c3Rl@i5wWB;e-`t7D&c-mcQl7x! zZWB`UGcw=Y2=}~wzrfLx=uet<;m3~=8I~ZRuzvMQUQdr+yTV|ATf1Uuomr__nDf=X zZ3WYJtHp_ri(}SQAPjv+Y+0=fH4krOP@S&=zZ-t1jW1o@}z;xk8 z(Nz1co&El^HK^NrhVHa-_;&88vTU>_J33=%{if;BEY*J#1n59=07jrGQ#IP>@u#3A z;!q+E1Rj3ZJ+!4bq9F8PXJ@yMgZL;>&gYA0%_Kbi8?S=XGM~dnQZQ!yBSgcZhY96H zrWnU;k)qy`rX&&xlDyA%(a1Hhi5CWkmg(`Gb%m(HKi-7Z!LKGRP_B8@`7&hdDy5n= z`OIxqxiVfX@OX1p(mQu>0Ai*v_cTMiw4qRt3~NBvr9oBy0)r>w3p~V0SCm=An6@3n)>@z!|o-$HvDK z|3D2ZMJkLE5loMKl6R^ez@Zz%S$&mbeoqH5`Bb){Ei21q&VP)hWS2tjShfFtGE+$z zzCR$P#uktu+#!w)cX!lWN1XU%K-r=s{|j?)Akf@q#3b#{6cZCuJ~gCxuMXRmI$nGtnH+-h z+GEi!*X=AP<|fG`1>MBdTb?28JYc=fGvAi2I<$B(rs$;eoJCyR6_bc~p!XR@O-+sD z=eH`-ye})I5ic1eL~TDmtfJ|8`0VJ*Yr=hNCd)G1p2MMz4C3^Mj?7;!w|Ly%JqmuW zlIEW^Ft%z?*|fpXda>Jr^1noFZEwFgVV%|*XhH@acv8rdGxeEX{M$(vG{Zw+x(ei@ zmfXb22}8-?Fi`vo-YVrTH*C?a8%M=Hv9MqVH7H^J$KsD?>!SFZ;ZsvnHr_gn=7acz z#W?0eCdVhVMWN12VV^$>WlQ?f;P^{(&pYTops|btm6aj>_Uz+hqpGwB)vWp0Cf5y< zft8-je~nn?W11plq}N)4A{l8I7$!ks_x$PXW-2XaRFswX_BnF{R#6YIwMhAgd5F9X zGmwdadS6(a^fjHtXg8=l?Rc0Sm%hk6E9!5cLVloEy4eh(=FwgP`)~I^5~pBEWo+F6 zSf2ncyMurJN91#cJTy_u8Y}@%!bq1RkGC~-bV@SXRd4F{R-*V`bS+6;W5vZ(&+I<9$;-V|eNfLa5n-6% z2(}&uGRF;p92eS*sE*oR$@pexaqr*meB)VhmIg@h{uzkk$9~qh#cHhw#>O%)b@+(| z^IQgqzuj~Sk(J;swEM-3TrJAPCq9k^^^`q{IItKBRXYe}e0Tdr=Huf7da3$l4PdpwWDop%^}n;dD#K4s#DYA8SHZ z&1!riV4W4R7R#C))JH1~axJ)RYnM$$lIR%6fIVA@zV{XVyx}C+a-Dt8Y9M)^KU0+H zR4IUb2CJ{Hg>CuaXtD50jB(_Tcx=Z$^WYu2u5kubqmwp%drJ6 z?Fo40g!Qd<-l=TQxqHEOuPX0;^z7iX?Ke^a%XT<13TA^5`4Xcw6D@Ur&VT&CUe0d} z1GjOVF1^L@>O)l@?bD~$wzgf(nxX1OGD8fEV?TdJcZc2KoUe|oP1#=$$7ee|xbY)A zDZq+cuTpc(fFdj^=!;{k03C69lMQ(|>uhRfRu%+!k&YOi-3|1QKB z z?n?eq1XP>p-IM$Z^C;2L3itnbJZAip*Zo0aw2bs8@(s^~*8T9go!%dHcAz2lM;`yp zD=7&xjFV$S&5uDaiScyD?B-i1ze`+CoRtz`Wn+Zl&#s4&}MO{@N!ufrzjG$B79)Y2d3tBk&)TxUTw@QS0TEL_?njX|@vq?Uz(nBFK5Pq7*xj#u*R&i|?7+6# z+|r_n#SW&LXhtheZdah{ZVoqwyT{D>MC3nkFF#N)xLi{p7J1jXlmVeb;cP5?e(=f# zuT7fvjSbjS781v?7{)-X3*?>tq?)Yd)~|1{BDS(pqC zC}~H#WXlkUW*H5CDOo<)#x7%RY)A;ShGhI5s*#cRDA8YgqG(HeKDx+#(ZQ?386dv! zlXCO)w91~Vw4AmOcATuV653fa9R$fyK8ul%rG z-wfS zihugoZyr38Im?Zuh6@RcF~t1anQu7>#lPpb#}4cOA!EM11`%f*07RqOVkmX{p~KJ9 z^zP;K#|)$`^Rb{rnHGH{~>1(fawV0*Z#)}M`m8-?ZJV<+e}s9wE# z)l&az?w^5{)`S(%MRzxdNqrs1n*-=jS^_jqE*5XDrA0+VE`5^*p3CuM<&dZEeCjoz zR;uu_H9ZPZV|fQq`Cyw4nscrVwi!fE6ciMmX$!_hN7uF;jjKG)d2@aC4ropY)8etW=xJvni)8eHi`H$%#zn^WJ5NLc-rqk|u&&4Z6fD_m&JfSI1Bvb?b<*n&sfl0^t z=HnmRl`XrFvMKB%9}>PaA`m-fK6a0(8=qPkWS5bb4=v?XcWi&hRY?O5HdulRi4?fN zlsJ*N-0Qw+Yic@s0(2uy%F@ib;GjXt01Fmx5XbRo6+n|pP(&nodMoap^z{~q ziEeaUT@Mxe3vJSfI6?uLND(CNr=#^W<1b}jzW58bIfyWTDle$mmS(|x-0|2UlX+9k zQ^EX7Nw}?EzVoBfT(-LT|=9N@^hcn-_p&sqG z&*oVs2JSU+N4ZD`FhCAWaS;>|wH2G*Id|?pa#@>tyxX`+4HyIArWDvVrX)2WAOQff z0qyHu&-S@i^MS-+j--!pr4fPBj~_8({~e1bfcl0wI1kaoN>mJL6KUPQm5N7lB(ui1 zE-o%kq)&djzWJ}ob<-GfDlkB;F31j-VHKvQUGQ3sp`CwyGJk_i!y^sD0fqC@$9|jO zOqN!r!8-p==F@ZVP=U$qSpY(gQ0)59P1&t@y?5rvg<}E+GB}26NYPp4f2YFQrQtot5mn3wu_qprZ=>Ig-$ zbW26Ws~IgY>}^5w`vTB(G`PTZaDiGBo5o(tp)qli|NeV( z@H_=R8V39rt5J5YB2Ky?4eJJ#b`_iBe2ot~6%7mLt5t8Vwi^Jy7|jWXqa3amOIoRb zOr}WVFP--DsS`1WpN%~)t3R!arKF^Q$e12KEqU36AWwnCBICpH4XCsfnyrHr>$I$4 z!DpKX$OKLWarN7nv@!uIA+~RNO)l$$w}p(;b>mx8pwYvu;dD_unryX_NhT8*Tj>BTrTTL&!?O+%Rv;b?B??gSzdp?6Uug9{ zd@V08Z$BdI?fpoCS$)t4mg4rT8Q_I}h`0d-vYZ^|dOB*Q^S|xqTV*vIg?@fVFSmMpaw0qtTRbx} z({Pg?#{2`sc9)M5N$*N|4;^t$+QP?#mov zGVC@I*lBVrOU-%2y!7%)fAKjpEFsgQc4{amtiHb95KQEwvf<(3T<9-Zm$xIew#P22 zc2Ix|App^>v6(3L_MCU0d3W##AB0M~3D00EWoKZqsJYT(#@w$Y_H7G22M~ApVFTRHMI_3be)Lkn#0F*V8Pq zc}`Cjy$bE;FJ6H7p=0y#R>`}-m4(0F>%@P|?7fx{=R^uFdISRnZ2W_xQhD{YuR3t< z{6yxu=4~JkeA;|(J6_nv#>Nvs&FuLA&PW^he@t(UwFFE8)|a!R{`E`K`i^ZnyE4$k z;(749Ix|oi$c3QbEJ3b~D_kQsPz~fIUKym($a_7dJ?o+40*OLl^{=&oq$<#Q(yyrp z{J-FAniyAw9tPbe&IhQ|a`DqFTVQGQ&Gq3!C2==4x{6EJwiPZ8zub-iXoUtkJiG{} zPaR&}_fn8_z~(=;5lD-aPWD3z8PZS@AaUiomF!G8I}Mf>e~0g#BelA-5#`cj;O5>N Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 From 2019286291d65f7d3eb3a14da206889c38a8f1d5 Mon Sep 17 00:00:00 2001 From: oca-travis Date: Tue, 23 Apr 2019 06:39:29 +0000 Subject: [PATCH 06/21] [UPD] Update partner_email_check.pot --- .../i18n/partner_email_check.pot | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 partner_email_check/i18n/partner_email_check.pot diff --git a/partner_email_check/i18n/partner_email_check.pot b/partner_email_check/i18n/partner_email_check.pot new file mode 100644 index 000000000..91a585e42 --- /dev/null +++ b/partner_email_check/i18n/partner_email_check.pot @@ -0,0 +1,26 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * partner_email_check +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 11.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: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_partner +msgid "Contact" +msgstr "" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:34 +#, python-format +msgid "Invalid e-mail!" +msgstr "" + From 9e169348d95e29ad04942ecb00628f3d1f3a3a1c Mon Sep 17 00:00:00 2001 From: Nikos Tsirintanis Date: Thu, 29 Aug 2019 12:16:11 +0200 Subject: [PATCH 07/21] [FIX][11.0] Make debugger record a debug message instead of error when importing validate_email in partner_email_check --- partner_email_check/models/res_partner.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/partner_email_check/models/res_partner.py b/partner_email_check/models/res_partner.py index 6e47d5c2d..68f196bf4 100644 --- a/partner_email_check/models/res_partner.py +++ b/partner_email_check/models/res_partner.py @@ -10,7 +10,7 @@ _logger = logging.getLogger(__name__) try: from validate_email import validate_email except ImportError: - _logger.error('Cannot import "validate_email".') + _logger.debug('Cannot import "validate_email".') def validate_email(email): _logger.warning( From 2ff7a3c05407040005c6448010ea8bebc59c6d13 Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Thu, 29 Aug 2019 14:58:31 +0000 Subject: [PATCH 08/21] partner_email_check 11.0.1.0.1 --- partner_email_check/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/partner_email_check/__manifest__.py b/partner_email_check/__manifest__.py index b7bf9c00f..f59fa0492 100644 --- a/partner_email_check/__manifest__.py +++ b/partner_email_check/__manifest__.py @@ -3,7 +3,7 @@ { 'name': 'Email Format Checker', - 'version': '11.0.1.0.0', + 'version': '11.0.1.0.1', 'summary': 'Validate email address field', 'author': "Komit, Odoo Community Association (OCA)", 'website': 'https://github.com/OCA/partner-contact', From 7e10289a7a5d95aae1c06e508d6786c7eab91c3c Mon Sep 17 00:00:00 2001 From: Jan Verbeek Date: Tue, 10 Sep 2019 17:45:15 +0200 Subject: [PATCH 09/21] Add normalization and optional uniqueness to partner_email_check - partner_email_check now uses email-validator instead of validate_email - Email addresses are normalized - There is a setting to enforce uniqueness of partner email addresses - There is a setting to check whether emails are deliverable (i.e. whether the domain resolves) --- partner_email_check/README.rst | 19 ++- partner_email_check/__manifest__.py | 7 +- partner_email_check/models/__init__.py | 1 + .../models/res_config_settings.py | 42 ++++++ partner_email_check/models/res_partner.py | 87 +++++++++--- .../tests/test_partner_email_check.py | 126 ++++++++++++++++++ .../views/base_config_view.xml | 39 ++++++ 7 files changed, 302 insertions(+), 19 deletions(-) create mode 100644 partner_email_check/models/res_config_settings.py create mode 100644 partner_email_check/views/base_config_view.xml diff --git a/partner_email_check/README.rst b/partner_email_check/README.rst index 98e714b1b..87043cd82 100644 --- a/partner_email_check/README.rst +++ b/partner_email_check/README.rst @@ -6,12 +6,27 @@ Partner Email Check =================== -This module validate the field ``email`` in the module ``res.partner``. +This module validates and normalizes the field ``email`` in the model +``res.partner``. + +As part of the normalization, email addresses are converted to lowercase. + +Optionally, multiple partners can not be allowed to have the same address. +This will not work with multiple comma-separated email addresses in the field, +although validation and normalization are still supported in such cases. Configuration ============= -Install python package validate_email: ``sudo pip install validate_email``. +Install python package email-validator: ``sudo pip install email-validator``. + +To not allow multiple partners to have the same email address, use the +"Filter duplicate email addresses"/``partner_email_check_filter_duplicates`` +setting. + +To validate that email addresses are deliverable (that the hostname exists), +use the "Check deliverability of email addresses"/``partner_email_check_check_deliverability`` +setting. Usage ===== diff --git a/partner_email_check/__manifest__.py b/partner_email_check/__manifest__.py index f59fa0492..3ebb7dcae 100644 --- a/partner_email_check/__manifest__.py +++ b/partner_email_check/__manifest__.py @@ -8,11 +8,14 @@ 'author': "Komit, Odoo Community Association (OCA)", 'website': 'https://github.com/OCA/partner-contact', 'category': 'Tools', - 'depends': ['base'], + 'depends': ['base_setup'], 'installable': True, 'application': False, 'license': 'AGPL-3', 'external_dependencies': { - 'python': ['validate_email'] + 'python': ['email_validator'] }, + 'data': [ + 'views/base_config_view.xml', + ] } diff --git a/partner_email_check/models/__init__.py b/partner_email_check/models/__init__.py index c6cc3b329..cf1724192 100644 --- a/partner_email_check/models/__init__.py +++ b/partner_email_check/models/__init__.py @@ -1,3 +1,4 @@ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). +from . import res_config_settings from . import res_partner diff --git a/partner_email_check/models/res_config_settings.py b/partner_email_check/models/res_config_settings.py new file mode 100644 index 000000000..405677809 --- /dev/null +++ b/partner_email_check/models/res_config_settings.py @@ -0,0 +1,42 @@ +from odoo import api, fields, models + + +class ResConfigSettings(models.TransientModel): + _inherit = 'res.config.settings' + + partner_email_check_filter_duplicates = fields.Boolean( + string="Filter duplicate partner email addresses", + help="Don't allow multiple partners to have the same email address.", + ) + + partner_email_check_check_deliverability = fields.Boolean( + string="Check deliverability of email addresses", + help="Don't allow email addresses with providers that don't exist", + ) + + @api.model + def get_values(self): + res = super(ResConfigSettings, self).get_values() + conf = self.env['ir.config_parameter'].sudo() + res.update( + partner_email_check_filter_duplicates=conf.get_param( + 'partner_email_check_filter_duplicates', 'False' + ) == 'True', + partner_email_check_check_deliverability=conf.get_param( + 'partner_email_check_check_deliverability', 'False' + ) == 'True', + ) + return res + + @api.multi + def set_values(self): + super(ResConfigSettings, self).set_values() + conf = self.env['ir.config_parameter'].sudo() + conf.set_param( + 'partner_email_check_filter_duplicates', + self.partner_email_check_filter_duplicates + ) + conf.set_param( + 'partner_email_check_check_deliverability', + self.partner_email_check_check_deliverability + ) diff --git a/partner_email_check/models/res_partner.py b/partner_email_check/models/res_partner.py index 68f196bf4..c343ea70d 100644 --- a/partner_email_check/models/res_partner.py +++ b/partner_email_check/models/res_partner.py @@ -3,32 +3,89 @@ import logging from odoo import api, models, _ -from odoo.exceptions import UserError +from odoo.exceptions import UserError, ValidationError _logger = logging.getLogger(__name__) try: - from validate_email import validate_email + from email_validator import ( + validate_email, + EmailSyntaxError, + EmailUndeliverableError, + ) except ImportError: - _logger.debug('Cannot import "validate_email".') + _logger.debug('Cannot import "email_validator".') - def validate_email(email): - _logger.warning( - 'Can not validate email, ' - 'python dependency required "validate_email"') - return True + validate_email = None class ResPartner(models.Model): _inherit = 'res.partner' + @api.model + def email_check(self, emails): + return ','.join(self._normalize_email(email.strip()) + for email in emails.split(',')) + @api.constrains('email') - def constrains_email(self): - for rec in self.filtered("email"): - self.email_check(rec.email) + def _check_email_unique(self): + if self._should_filter_duplicates(): + for rec in self.filtered("email"): + if ',' in rec.email: + raise UserError( + _("Field contains multiple email addresses. This is " + "not supported when duplicate email addresses are " + "not allowed.") + ) + if self.search_count( + [('email', '=', rec.email), ('id', '!=', rec.id)] + ): + raise UserError( + _("Email '%s' is already in use.") % rec.email.strip() + ) + + def _normalize_email(self, email): + if validate_email is None: + _logger.warning( + 'Can not validate email, ' + 'python dependency required "email_validator"') + return email + + try: + result = validate_email( + email, + check_deliverability=self._should_check_deliverability(), + ) + except EmailSyntaxError: + raise ValidationError( + _("%s is an invalid email") % email.strip() + ) + except EmailUndeliverableError: + raise ValidationError( + _("Cannot deliver to email address %s") % email.strip() + ) + return result['local'].lower() + '@' + result['domain_i18n'] + + def _should_filter_duplicates(self): + conf = self.env['ir.config_parameter'].get_param( + 'partner_email_check_filter_duplicates', 'False' + ) + return conf == 'True' + + def _should_check_deliverability(self): + conf = self.env['ir.config_parameter'].get_param( + 'partner_email_check_check_deliverability', 'False' + ) + return conf == 'True' @api.model - def email_check(self, email): - if validate_email(email): - return True - raise UserError(_('Invalid e-mail!')) + def create(self, vals): + if vals.get('email'): + vals['email'] = self.email_check(vals['email']) + return super(ResPartner, self).create(vals) + + @api.multi + def write(self, vals): + if vals.get('email'): + vals['email'] = self.email_check(vals['email']) + return super(ResPartner, self).write(vals) diff --git a/partner_email_check/tests/test_partner_email_check.py b/partner_email_check/tests/test_partner_email_check.py index 5a9cea843..ee3dc08b6 100644 --- a/partner_email_check/tests/test_partner_email_check.py +++ b/partner_email_check/tests/test_partner_email_check.py @@ -1,8 +1,11 @@ # Copyright 2019 Komit # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). +from unittest.mock import patch + from odoo.exceptions import ValidationError from odoo.tests.common import TransactionCase +from odoo.tools.misc import mute_logger class TestPartnerEmailCheck(TransactionCase): @@ -11,6 +14,10 @@ class TestPartnerEmailCheck(TransactionCase): self.test_partner = self.env['res.partner'].create({ 'name': 'test', }) + self.wizard = self.env['res.config.settings'].create({}) + self.wizard.partner_email_check_filter_duplicates = False + self.wizard.partner_email_check_check_deliverability = False + self.wizard.set_values() def test_bad_email(self): """Test rejection of bad emails.""" @@ -21,3 +28,122 @@ class TestPartnerEmailCheck(TransactionCase): """Test acceptance of good""" self.test_partner.email = 'goodemail@domain.com' self.assertTrue(self.test_partner.email) + + def test_bad_emails(self): + """Test rejection of bad emails.""" + with self.assertRaises(ValidationError): + self.test_partner.email = 'good@domain.com,bad@email@domain..com' + + def test_good_emails(self): + """Test acceptance of good""" + self.test_partner.email = 'goodemail@domain.com,goodemail2@domain.com' + self.assertTrue(self.test_partner.email) + + def test_email_domain_normalization(self): + """Test normalization of email domain names, including punycode.""" + self.test_partner.write({'email': 'goodemail@xn--xamPle-9ua.com'}) + self.assertEqual(self.test_partner.email, u'goodemail@éxample.com') + + def test_multi_email_domain_normalization(self): + """Test normalization of email domain names of multiple addresses.""" + self.test_partner.write({ + 'email': 'goodemail@doMAIN.com,othergood@xn--xample-9ua.com' + }) + self.assertEqual( + self.test_partner.email, + u'goodemail@domain.com,othergood@éxample.com' + ) + + def test_email_local_normalization(self): + """Test normalization of the local part of email addresses.""" + self.test_partner.write({'email': 'Me@mail.org'}) + # .lower() is locale-dependent, so don't hardcode the result + self.assertEqual(self.test_partner.email, 'Me'.lower() + '@mail.org') + + def test_multi_email_local_normalization(self): + """Test normalization of the local part of multiple addresses.""" + self.test_partner.write({'email': 'You@mAiL.net,mE@mail.com'}) + self.assertEqual( + self.test_partner.email, + 'You'.lower() + '@mail.net,' + 'mE'.lower() + '@mail.com' + ) + + def disallow_duplicates(self): + self.wizard.partner_email_check_filter_duplicates = True + self.wizard.set_values() + + def test_duplicate_addresses_disallowed(self): + self.disallow_duplicates() + self.test_partner.write({'email': 'email@domain.tld'}) + with self.assertRaises(ValidationError): + self.env['res.partner'].create({ + 'name': 'alsotest', + 'email': 'email@domain.tld' + }) + + def test_duplicate_after_normalization_addresses_disallowed(self): + self.disallow_duplicates() + self.env['res.partner'].create({ + 'name': 'alsotest', + 'email': 'email@doMAIN.tld' + }) + with self.assertRaises(ValidationError): + self.test_partner.email = 'email@domain.tld' + + def test_multiple_addresses_disallowed_when_duplicates_filtered(self): + self.disallow_duplicates() + with self.assertRaises(ValidationError): + self.test_partner.email = 'foo@bar.org,email@domain.tld' + + def test_duplicate_addresses_allowed_by_default(self): + self.env['res.partner'].create({ + 'name': 'alsotest', + 'email': 'email@domain.tld', + }) + self.test_partner.email = 'email@domain.tld' + + def check_deliverability(self): + self.wizard.partner_email_check_check_deliverability = True + self.wizard.set_values() + + def test_deliverable_addresses_allowed(self): + self.check_deliverability() + # We only need a resolving domain, not a real user + self.test_partner.email = 'gooddomain-icraglusrk@gmail.com' + self.assertTrue(self.test_partner.email) + + def test_nondeliverable_addresses_not_allowed(self): + self.check_deliverability() + with self.assertRaises(ValidationError): + # This domain may resolve by mistake on certain network setups + # At least until a new version of email-validator is released + # See https://github.com/JoshData/python-email-validator/pull/30 + self.test_partner.email = 'cezrik@acoa.nrdkt' + + def test_config_getters(self): + other_wizard = self.env['res.config.settings'].create({}) + self.assertFalse(other_wizard.partner_email_check_check_deliverability) + self.assertFalse(other_wizard.partner_email_check_filter_duplicates) + self.disallow_duplicates() + self.check_deliverability() + other_wizard = self.env['res.config.settings'].create({}) + self.assertTrue(other_wizard.partner_email_check_check_deliverability) + self.assertTrue(other_wizard.partner_email_check_filter_duplicates) + + @mute_logger('odoo.addons.partner_email_check.models.res_partner') + def test_lacking_dependency_does_not_halt_execution(self): + with patch('odoo.addons.partner_email_check.models.res_partner.' + 'validate_email', None): + self.test_partner.email = 'notatallvalid@@domain' + + @mute_logger('odoo.addons.partner_email_check.models.res_partner') + def test_lacking_dependency_keeps_uniqueness_constraint_working(self): + self.disallow_duplicates() + with patch('odoo.addons.partner_email_check.models.res_partner.' + 'validate_email', None): + self.env['res.partner'].create({ + 'name': 'alsotest', + 'email': 'email@domain.tld' + }) + with self.assertRaises(ValidationError): + self.test_partner.email = 'email@domain.tld' diff --git a/partner_email_check/views/base_config_view.xml b/partner_email_check/views/base_config_view.xml new file mode 100644 index 000000000..3bc93e759 --- /dev/null +++ b/partner_email_check/views/base_config_view.xml @@ -0,0 +1,39 @@ + + + + partner_email_check + res.config.settings + + + +

Email validation

+
+
+
+ +
+
+
+
+
+
+ +
+
+
+
+
+
+
+
+
From 00773baef78d5f171da52b8e7e5976d27291c905 Mon Sep 17 00:00:00 2001 From: Jan Verbeek Date: Fri, 25 Oct 2019 15:28:44 +0200 Subject: [PATCH 10/21] [FIX] Fix partner_email_check conflict with portal, bump version portal's tests set an invalid email address, `c@c`, that's rejected by the current version of partner_email_check. If partner_email_check is installed before portal's tests run then they fail. To solve this, skip email validation if tests are running, unless a key in the context is set to make the checks run anyway. That lets tests in other addons opt in to the checks as well. The previous update to partner_email_check didn't bump the version number, so do that now. --- partner_email_check/__manifest__.py | 2 +- partner_email_check/models/res_partner.py | 4 ++++ .../tests/test_partner_email_check.py | 22 ++++++++++++++----- 3 files changed, 22 insertions(+), 6 deletions(-) diff --git a/partner_email_check/__manifest__.py b/partner_email_check/__manifest__.py index 3ebb7dcae..ff0f99926 100644 --- a/partner_email_check/__manifest__.py +++ b/partner_email_check/__manifest__.py @@ -3,7 +3,7 @@ { 'name': 'Email Format Checker', - 'version': '11.0.1.0.1', + 'version': '11.0.1.1.0', 'summary': 'Validate email address field', 'author': "Komit, Odoo Community Association (OCA)", 'website': 'https://github.com/OCA/partner-contact', diff --git a/partner_email_check/models/res_partner.py b/partner_email_check/models/res_partner.py index c343ea70d..00d550b5e 100644 --- a/partner_email_check/models/res_partner.py +++ b/partner_email_check/models/res_partner.py @@ -4,6 +4,7 @@ import logging from odoo import api, models, _ from odoo.exceptions import UserError, ValidationError +from odoo.tools import config _logger = logging.getLogger(__name__) @@ -24,6 +25,9 @@ class ResPartner(models.Model): @api.model def email_check(self, emails): + if (config['test_enable'] and + not self.env.context.get('test_partner_email_check')): + return emails return ','.join(self._normalize_email(email.strip()) for email in emails.split(',')) diff --git a/partner_email_check/tests/test_partner_email_check.py b/partner_email_check/tests/test_partner_email_check.py index ee3dc08b6..0b4d72d17 100644 --- a/partner_email_check/tests/test_partner_email_check.py +++ b/partner_email_check/tests/test_partner_email_check.py @@ -11,7 +11,11 @@ from odoo.tools.misc import mute_logger class TestPartnerEmailCheck(TransactionCase): def setUp(self): super(TestPartnerEmailCheck, self).setUp() - self.test_partner = self.env['res.partner'].create({ + # Checks are disabled during tests unless this key is set + self.res_partner = self.env['res.partner'].with_context( + test_partner_email_check=True + ) + self.test_partner = self.res_partner.create({ 'name': 'test', }) self.wizard = self.env['res.config.settings'].create({}) @@ -76,14 +80,14 @@ class TestPartnerEmailCheck(TransactionCase): self.disallow_duplicates() self.test_partner.write({'email': 'email@domain.tld'}) with self.assertRaises(ValidationError): - self.env['res.partner'].create({ + self.res_partner.create({ 'name': 'alsotest', 'email': 'email@domain.tld' }) def test_duplicate_after_normalization_addresses_disallowed(self): self.disallow_duplicates() - self.env['res.partner'].create({ + self.res_partner.create({ 'name': 'alsotest', 'email': 'email@doMAIN.tld' }) @@ -96,7 +100,7 @@ class TestPartnerEmailCheck(TransactionCase): self.test_partner.email = 'foo@bar.org,email@domain.tld' def test_duplicate_addresses_allowed_by_default(self): - self.env['res.partner'].create({ + self.res_partner.create({ 'name': 'alsotest', 'email': 'email@domain.tld', }) @@ -141,9 +145,17 @@ class TestPartnerEmailCheck(TransactionCase): self.disallow_duplicates() with patch('odoo.addons.partner_email_check.models.res_partner.' 'validate_email', None): - self.env['res.partner'].create({ + self.res_partner.create({ 'name': 'alsotest', 'email': 'email@domain.tld' }) with self.assertRaises(ValidationError): self.test_partner.email = 'email@domain.tld' + + def test_invalid_email_addresses_allowed_during_tests(self): + # Note: testing without test_partner_email_check in the context + new_partner = self.env['res.partner'].create({ + 'name': 'invalidly emailed', + 'email': 'invalid' + }) + self.assertEqual('invalid', new_partner.email) From 6f4c5339fa05fcc1694bc60f3b0ba1d5c6c00a90 Mon Sep 17 00:00:00 2001 From: oca-travis Date: Thu, 28 Nov 2019 13:32:28 +0000 Subject: [PATCH 11/21] [UPD] Update partner_email_check.pot --- .../i18n/partner_email_check.pot | 62 ++++++++++++++++++- 1 file changed, 60 insertions(+), 2 deletions(-) diff --git a/partner_email_check/i18n/partner_email_check.pot b/partner_email_check/i18n/partner_email_check.pot index 91a585e42..276f2b061 100644 --- a/partner_email_check/i18n/partner_email_check.pot +++ b/partner_email_check/i18n/partner_email_check.pot @@ -13,14 +13,72 @@ msgstr "" "Content-Transfer-Encoding: \n" "Plural-Forms: \n" +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:65 +#, python-format +msgid "%s is an invalid email" +msgstr "" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:69 +#, python-format +msgid "Cannot deliver to email address %s" +msgstr "" + +#. module: partner_email_check +#: model:ir.model.fields,field_description:partner_email_check.field_res_config_settings_partner_email_check_check_deliverability +msgid "Check deliverability of email addresses" +msgstr "" + #. module: partner_email_check #: model:ir.model,name:partner_email_check.model_res_partner msgid "Contact" msgstr "" #. module: partner_email_check -#: code:addons/partner_email_check/models/res_partner.py:34 +#: model:ir.model.fields,help:partner_email_check.field_res_config_settings_partner_email_check_check_deliverability +msgid "Don't allow email addresses with providers that don't exist" +msgstr "" + +#. module: partner_email_check +#: model:ir.model.fields,help:partner_email_check.field_res_config_settings_partner_email_check_filter_duplicates +msgid "Don't allow multiple partners to have the same email address." +msgstr "" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:48 +#, python-format +msgid "Email '%s' is already in use." +msgstr "" + +#. module: partner_email_check +#: model:ir.ui.view,arch_db:partner_email_check.view_general_configuration +msgid "Email validation" +msgstr "" + +#. module: partner_email_check +#: model:ir.ui.view,arch_db:partner_email_check.view_general_configuration +msgid "Ensure that partner email addresses can be delivered to" +msgstr "" + +#. module: partner_email_check +#: code:addons/partner_email_check/models/res_partner.py:40 #, python-format -msgid "Invalid e-mail!" +msgid "Field contains multiple email addresses. This is not supported when duplicate email addresses are not allowed." +msgstr "" + +#. module: partner_email_check +#: model:ir.model.fields,field_description:partner_email_check.field_res_config_settings_partner_email_check_filter_duplicates +msgid "Filter duplicate partner email addresses" +msgstr "" + +#. module: partner_email_check +#: model:ir.ui.view,arch_db:partner_email_check.view_general_configuration +msgid "Require partner email addresses to be unique" +msgstr "" + +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_config_settings +msgid "res.config.settings" msgstr "" From 338020c4b8cff500c656ce9d40a44dc1b790b79c Mon Sep 17 00:00:00 2001 From: OCA-git-bot Date: Thu, 28 Nov 2019 14:00:20 +0000 Subject: [PATCH 12/21] partner_email_check 11.0.2.0.0 --- partner_email_check/__manifest__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/partner_email_check/__manifest__.py b/partner_email_check/__manifest__.py index ff0f99926..ba7e9b2f4 100644 --- a/partner_email_check/__manifest__.py +++ b/partner_email_check/__manifest__.py @@ -3,7 +3,7 @@ { 'name': 'Email Format Checker', - 'version': '11.0.1.1.0', + 'version': '11.0.2.0.0', 'summary': 'Validate email address field', 'author': "Komit, Odoo Community Association (OCA)", 'website': 'https://github.com/OCA/partner-contact', From 15d669e2623e639909388e3f5b38eb774b4bb9df Mon Sep 17 00:00:00 2001 From: Abraham Anes Date: Tue, 9 Jun 2020 13:56:44 +0200 Subject: [PATCH 13/21] [12.0][MIG] partner_email_check: Migration to 12.0 --- partner_email_check/README.rst | 68 ++- partner_email_check/__manifest__.py | 2 +- .../i18n/partner_email_check.pot | 26 +- partner_email_check/models/res_partner.py | 4 +- partner_email_check/readme/CONFIGURE.rst | 9 + partner_email_check/readme/CONTRIBUTORS.rst | 2 + partner_email_check/readme/DESCRIPTION.rst | 8 + partner_email_check/readme/USAGE.rst | 1 + .../static/description/index.html | 441 ++++++++++++++++++ 9 files changed, 525 insertions(+), 36 deletions(-) create mode 100644 partner_email_check/readme/CONFIGURE.rst create mode 100644 partner_email_check/readme/CONTRIBUTORS.rst create mode 100644 partner_email_check/readme/DESCRIPTION.rst create mode 100644 partner_email_check/readme/USAGE.rst create mode 100644 partner_email_check/static/description/index.html diff --git a/partner_email_check/README.rst b/partner_email_check/README.rst index 87043cd82..c2ba1c366 100644 --- a/partner_email_check/README.rst +++ b/partner_email_check/README.rst @@ -1,10 +1,29 @@ -.. 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 - -=================== -Partner Email Check -=================== +==================== +Email Format Checker +==================== + +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! 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%2Fpartner--contact-lightgray.png?logo=github + :target: https://github.com/OCA/partner-contact/tree/12.0/partner_email_check + :alt: OCA/partner-contact +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/partner-contact-12-0/partner-contact-12-0-partner_email_check + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/134/12.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| This module validates and normalizes the field ``email`` in the model ``res.partner``. @@ -15,6 +34,11 @@ Optionally, multiple partners can not be allowed to have the same address. This will not work with multiple comma-separated email addresses in the field, although validation and normalization are still supported in such cases. +**Table of contents** + +.. contents:: + :local: + Configuration ============= @@ -36,36 +60,40 @@ This module integrate automatically in all of the view ``res.partner`` Bug Tracker =========== -Bugs are tracked on `GitHub 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 `_. +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 `_. + +Do not contact contributors directly about support or help with technical issues. Credits ======= -Images ------- +Authors +~~~~~~~ -* Odoo Community Association: `Icon `_. +* Komit Contributors ------------- +~~~~~~~~~~~~ * Vo Hoang Dat * Jean-Charles Drubay -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/partner-contact `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/partner_email_check/__manifest__.py b/partner_email_check/__manifest__.py index ba7e9b2f4..b275a6b70 100644 --- a/partner_email_check/__manifest__.py +++ b/partner_email_check/__manifest__.py @@ -3,7 +3,7 @@ { 'name': 'Email Format Checker', - 'version': '11.0.2.0.0', + 'version': '12.0.1.0.0', 'summary': 'Validate email address field', 'author': "Komit, Odoo Community Association (OCA)", 'website': 'https://github.com/OCA/partner-contact', diff --git a/partner_email_check/i18n/partner_email_check.pot b/partner_email_check/i18n/partner_email_check.pot index 276f2b061..8e0ba1a70 100644 --- a/partner_email_check/i18n/partner_email_check.pot +++ b/partner_email_check/i18n/partner_email_check.pot @@ -4,7 +4,7 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 11.0\n" +"Project-Id-Version: Odoo Server 12.0\n" "Report-Msgid-Bugs-To: \n" "Last-Translator: <>\n" "Language-Team: \n" @@ -26,22 +26,27 @@ msgid "Cannot deliver to email address %s" msgstr "" #. module: partner_email_check -#: model:ir.model.fields,field_description:partner_email_check.field_res_config_settings_partner_email_check_check_deliverability +#: model:ir.model.fields,field_description:partner_email_check.field_res_config_settings__partner_email_check_check_deliverability msgid "Check deliverability of email addresses" msgstr "" +#. module: partner_email_check +#: model:ir.model,name:partner_email_check.model_res_config_settings +msgid "Config Settings" +msgstr "" + #. module: partner_email_check #: model:ir.model,name:partner_email_check.model_res_partner msgid "Contact" msgstr "" #. module: partner_email_check -#: model:ir.model.fields,help:partner_email_check.field_res_config_settings_partner_email_check_check_deliverability +#: model:ir.model.fields,help:partner_email_check.field_res_config_settings__partner_email_check_check_deliverability msgid "Don't allow email addresses with providers that don't exist" msgstr "" #. module: partner_email_check -#: model:ir.model.fields,help:partner_email_check.field_res_config_settings_partner_email_check_filter_duplicates +#: model:ir.model.fields,help:partner_email_check.field_res_config_settings__partner_email_check_filter_duplicates msgid "Don't allow multiple partners to have the same email address." msgstr "" @@ -52,12 +57,12 @@ msgid "Email '%s' is already in use." msgstr "" #. module: partner_email_check -#: model:ir.ui.view,arch_db:partner_email_check.view_general_configuration +#: model_terms:ir.ui.view,arch_db:partner_email_check.view_general_configuration msgid "Email validation" msgstr "" #. module: partner_email_check -#: model:ir.ui.view,arch_db:partner_email_check.view_general_configuration +#: model_terms:ir.ui.view,arch_db:partner_email_check.view_general_configuration msgid "Ensure that partner email addresses can be delivered to" msgstr "" @@ -68,17 +73,12 @@ msgid "Field contains multiple email addresses. This is not supported when dupli msgstr "" #. module: partner_email_check -#: model:ir.model.fields,field_description:partner_email_check.field_res_config_settings_partner_email_check_filter_duplicates +#: model:ir.model.fields,field_description:partner_email_check.field_res_config_settings__partner_email_check_filter_duplicates msgid "Filter duplicate partner email addresses" msgstr "" #. module: partner_email_check -#: model:ir.ui.view,arch_db:partner_email_check.view_general_configuration +#: model_terms:ir.ui.view,arch_db:partner_email_check.view_general_configuration msgid "Require partner email addresses to be unique" msgstr "" -#. module: partner_email_check -#: model:ir.model,name:partner_email_check.model_res_config_settings -msgid "res.config.settings" -msgstr "" - diff --git a/partner_email_check/models/res_partner.py b/partner_email_check/models/res_partner.py index 00d550b5e..65da60194 100644 --- a/partner_email_check/models/res_partner.py +++ b/partner_email_check/models/res_partner.py @@ -71,13 +71,13 @@ class ResPartner(models.Model): return result['local'].lower() + '@' + result['domain_i18n'] def _should_filter_duplicates(self): - conf = self.env['ir.config_parameter'].get_param( + conf = self.env['ir.config_parameter'].sudo().get_param( 'partner_email_check_filter_duplicates', 'False' ) return conf == 'True' def _should_check_deliverability(self): - conf = self.env['ir.config_parameter'].get_param( + conf = self.env['ir.config_parameter'].sudo().get_param( 'partner_email_check_check_deliverability', 'False' ) return conf == 'True' diff --git a/partner_email_check/readme/CONFIGURE.rst b/partner_email_check/readme/CONFIGURE.rst new file mode 100644 index 000000000..b8a310e6e --- /dev/null +++ b/partner_email_check/readme/CONFIGURE.rst @@ -0,0 +1,9 @@ +Install python package email-validator: ``sudo pip install email-validator``. + +To not allow multiple partners to have the same email address, use the +"Filter duplicate email addresses"/``partner_email_check_filter_duplicates`` +setting. + +To validate that email addresses are deliverable (that the hostname exists), +use the "Check deliverability of email addresses"/``partner_email_check_check_deliverability`` +setting. diff --git a/partner_email_check/readme/CONTRIBUTORS.rst b/partner_email_check/readme/CONTRIBUTORS.rst new file mode 100644 index 000000000..5e004a233 --- /dev/null +++ b/partner_email_check/readme/CONTRIBUTORS.rst @@ -0,0 +1,2 @@ +* Vo Hoang Dat +* Jean-Charles Drubay diff --git a/partner_email_check/readme/DESCRIPTION.rst b/partner_email_check/readme/DESCRIPTION.rst new file mode 100644 index 000000000..d15827c8f --- /dev/null +++ b/partner_email_check/readme/DESCRIPTION.rst @@ -0,0 +1,8 @@ +This module validates and normalizes the field ``email`` in the model +``res.partner``. + +As part of the normalization, email addresses are converted to lowercase. + +Optionally, multiple partners can not be allowed to have the same address. +This will not work with multiple comma-separated email addresses in the field, +although validation and normalization are still supported in such cases. diff --git a/partner_email_check/readme/USAGE.rst b/partner_email_check/readme/USAGE.rst new file mode 100644 index 000000000..56fbd95bd --- /dev/null +++ b/partner_email_check/readme/USAGE.rst @@ -0,0 +1 @@ +This module integrate automatically in all of the view ``res.partner`` diff --git a/partner_email_check/static/description/index.html b/partner_email_check/static/description/index.html new file mode 100644 index 000000000..fa5753ce8 --- /dev/null +++ b/partner_email_check/static/description/index.html @@ -0,0 +1,441 @@ + + + + + + +Email Format Checker + + + +
+

Email Format Checker

+ + +

Beta License: AGPL-3 OCA/partner-contact Translate me on Weblate Try me on Runbot

+

This module validates and normalizes the field email in the model +res.partner.

+

As part of the normalization, email addresses are converted to lowercase.

+

Optionally, multiple partners can not be allowed to have the same address. +This will not work with multiple comma-separated email addresses in the field, +although validation and normalization are still supported in such cases.

+

Table of contents

+ +
+

Configuration

+

Install python package email-validator: sudo pip install email-validator.

+

To not allow multiple partners to have the same email address, use the +“Filter duplicate email addresses”/partner_email_check_filter_duplicates +setting.

+

To validate that email addresses are deliverable (that the hostname exists), +use the “Check deliverability of email addresses”/partner_email_check_check_deliverability +setting.

+
+
+

Usage

+

This module integrate automatically in all of the view res.partner

+
+
+

Bug Tracker

+

Bugs are tracked on GitHub 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.

+

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

+
+
+

Credits

+
+

Authors

+
    +
  • Komit
  • +
+
+
+

Contributors

+ +
+
+

Maintainers

+

This module is maintained by the OCA.

+Odoo Community Association +

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/partner-contact project on GitHub.

+

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

+
+
+
+ + From aa70ad6731f0cc7cb89dc2864bee9ad1247fc696 Mon Sep 17 00:00:00 2001 From: Quentin Groulard Date: Thu, 15 Oct 2020 17:43:07 +0200 Subject: [PATCH 14/21] [MIG] partner_email_check: Migration to 13.0 --- partner_email_check/__manifest__.py | 28 ++--- .../i18n/partner_email_check.pot | 2 +- .../models/res_config_settings.py | 25 ++-- partner_email_check/models/res_partner.py | 70 +++++------ .../tests/test_partner_email_check.py | 110 ++++++++---------- .../views/base_config_view.xml | 10 +- 6 files changed, 115 insertions(+), 130 deletions(-) diff --git a/partner_email_check/__manifest__.py b/partner_email_check/__manifest__.py index b275a6b70..b2445e46d 100644 --- a/partner_email_check/__manifest__.py +++ b/partner_email_check/__manifest__.py @@ -2,20 +2,16 @@ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). { - 'name': 'Email Format Checker', - 'version': '12.0.1.0.0', - 'summary': 'Validate email address field', - 'author': "Komit, Odoo Community Association (OCA)", - 'website': 'https://github.com/OCA/partner-contact', - 'category': 'Tools', - 'depends': ['base_setup'], - 'installable': True, - 'application': False, - 'license': 'AGPL-3', - 'external_dependencies': { - 'python': ['email_validator'] - }, - 'data': [ - 'views/base_config_view.xml', - ] + "name": "Email Format Checker", + "version": "13.0.1.0.0", + "summary": "Validate email address field", + "author": "Komit, Odoo Community Association (OCA)", + "website": "https://github.com/OCA/partner-contact", + "category": "Tools", + "depends": ["base_setup"], + "installable": True, + "application": False, + "license": "AGPL-3", + "external_dependencies": {"python": ["email-validator"]}, + "data": ["views/base_config_view.xml"], } diff --git a/partner_email_check/i18n/partner_email_check.pot b/partner_email_check/i18n/partner_email_check.pot index 8e0ba1a70..f9923d992 100644 --- a/partner_email_check/i18n/partner_email_check.pot +++ b/partner_email_check/i18n/partner_email_check.pot @@ -4,7 +4,7 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 12.0\n" +"Project-Id-Version: Odoo Server 13.0\n" "Report-Msgid-Bugs-To: \n" "Last-Translator: <>\n" "Language-Team: \n" diff --git a/partner_email_check/models/res_config_settings.py b/partner_email_check/models/res_config_settings.py index 405677809..07e8b6769 100644 --- a/partner_email_check/models/res_config_settings.py +++ b/partner_email_check/models/res_config_settings.py @@ -2,7 +2,7 @@ from odoo import api, fields, models class ResConfigSettings(models.TransientModel): - _inherit = 'res.config.settings' + _inherit = "res.config.settings" partner_email_check_filter_duplicates = fields.Boolean( string="Filter duplicate partner email addresses", @@ -17,26 +17,27 @@ class ResConfigSettings(models.TransientModel): @api.model def get_values(self): res = super(ResConfigSettings, self).get_values() - conf = self.env['ir.config_parameter'].sudo() + conf = self.env["ir.config_parameter"].sudo() res.update( partner_email_check_filter_duplicates=conf.get_param( - 'partner_email_check_filter_duplicates', 'False' - ) == 'True', + "partner_email_check_filter_duplicates", "False" + ) + == "True", partner_email_check_check_deliverability=conf.get_param( - 'partner_email_check_check_deliverability', 'False' - ) == 'True', + "partner_email_check_check_deliverability", "False" + ) + == "True", ) return res - @api.multi def set_values(self): super(ResConfigSettings, self).set_values() - conf = self.env['ir.config_parameter'].sudo() + conf = self.env["ir.config_parameter"].sudo() conf.set_param( - 'partner_email_check_filter_duplicates', - self.partner_email_check_filter_duplicates + "partner_email_check_filter_duplicates", + self.partner_email_check_filter_duplicates, ) conf.set_param( - 'partner_email_check_check_deliverability', - self.partner_email_check_check_deliverability + "partner_email_check_check_deliverability", + self.partner_email_check_check_deliverability, ) diff --git a/partner_email_check/models/res_partner.py b/partner_email_check/models/res_partner.py index 65da60194..d0b0eede4 100644 --- a/partner_email_check/models/res_partner.py +++ b/partner_email_check/models/res_partner.py @@ -2,7 +2,8 @@ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). import logging -from odoo import api, models, _ + +from odoo import _, api, models from odoo.exceptions import UserError, ValidationError from odoo.tools import config @@ -21,29 +22,31 @@ except ImportError: class ResPartner(models.Model): - _inherit = 'res.partner' + _inherit = "res.partner" @api.model def email_check(self, emails): - if (config['test_enable'] and - not self.env.context.get('test_partner_email_check')): + if config["test_enable"] and not self.env.context.get( + "test_partner_email_check" + ): return emails - return ','.join(self._normalize_email(email.strip()) - for email in emails.split(',')) + return ",".join( + self._normalize_email(email.strip()) for email in emails.split(",") + ) - @api.constrains('email') + @api.constrains("email") def _check_email_unique(self): if self._should_filter_duplicates(): for rec in self.filtered("email"): - if ',' in rec.email: + if "," in rec.email: raise UserError( - _("Field contains multiple email addresses. This is " - "not supported when duplicate email addresses are " - "not allowed.") + _( + "Field contains multiple email addresses. This is " + "not supported when duplicate email addresses are " + "not allowed." + ) ) - if self.search_count( - [('email', '=', rec.email), ('id', '!=', rec.id)] - ): + if self.search_count([("email", "=", rec.email), ("id", "!=", rec.id)]): raise UserError( _("Email '%s' is already in use.") % rec.email.strip() ) @@ -51,45 +54,46 @@ class ResPartner(models.Model): def _normalize_email(self, email): if validate_email is None: _logger.warning( - 'Can not validate email, ' - 'python dependency required "email_validator"') + "Can not validate email, " + 'python dependency required "email_validator"' + ) return email try: result = validate_email( - email, - check_deliverability=self._should_check_deliverability(), + email, check_deliverability=self._should_check_deliverability(), ) except EmailSyntaxError: - raise ValidationError( - _("%s is an invalid email") % email.strip() - ) + raise ValidationError(_("%s is an invalid email") % email.strip()) except EmailUndeliverableError: raise ValidationError( _("Cannot deliver to email address %s") % email.strip() ) - return result['local'].lower() + '@' + result['domain_i18n'] + return result["local"].lower() + "@" + result["domain_i18n"] def _should_filter_duplicates(self): - conf = self.env['ir.config_parameter'].sudo().get_param( - 'partner_email_check_filter_duplicates', 'False' + conf = ( + self.env["ir.config_parameter"] + .sudo() + .get_param("partner_email_check_filter_duplicates", "False") ) - return conf == 'True' + return conf == "True" def _should_check_deliverability(self): - conf = self.env['ir.config_parameter'].sudo().get_param( - 'partner_email_check_check_deliverability', 'False' + conf = ( + self.env["ir.config_parameter"] + .sudo() + .get_param("partner_email_check_check_deliverability", "False") ) - return conf == 'True' + return conf == "True" @api.model def create(self, vals): - if vals.get('email'): - vals['email'] = self.email_check(vals['email']) + if vals.get("email"): + vals["email"] = self.email_check(vals["email"]) return super(ResPartner, self).create(vals) - @api.multi def write(self, vals): - if vals.get('email'): - vals['email'] = self.email_check(vals['email']) + if vals.get("email"): + vals["email"] = self.email_check(vals["email"]) return super(ResPartner, self).write(vals) diff --git a/partner_email_check/tests/test_partner_email_check.py b/partner_email_check/tests/test_partner_email_check.py index 0b4d72d17..ef6f8a508 100644 --- a/partner_email_check/tests/test_partner_email_check.py +++ b/partner_email_check/tests/test_partner_email_check.py @@ -3,7 +3,7 @@ from unittest.mock import patch -from odoo.exceptions import ValidationError +from odoo.exceptions import UserError, ValidationError from odoo.tests.common import TransactionCase from odoo.tools.misc import mute_logger @@ -12,13 +12,11 @@ class TestPartnerEmailCheck(TransactionCase): def setUp(self): super(TestPartnerEmailCheck, self).setUp() # Checks are disabled during tests unless this key is set - self.res_partner = self.env['res.partner'].with_context( + self.res_partner = self.env["res.partner"].with_context( test_partner_email_check=True ) - self.test_partner = self.res_partner.create({ - 'name': 'test', - }) - self.wizard = self.env['res.config.settings'].create({}) + self.test_partner = self.res_partner.create({"name": "test"}) + self.wizard = self.env["res.config.settings"].create({}) self.wizard.partner_email_check_filter_duplicates = False self.wizard.partner_email_check_check_deliverability = False self.wizard.set_values() @@ -26,50 +24,49 @@ class TestPartnerEmailCheck(TransactionCase): def test_bad_email(self): """Test rejection of bad emails.""" with self.assertRaises(ValidationError): - self.test_partner.email = 'bad@email@domain..com' + self.test_partner.email = "bad@email@domain..com" def test_good_email(self): """Test acceptance of good""" - self.test_partner.email = 'goodemail@domain.com' + self.test_partner.email = "goodemail@domain.com" self.assertTrue(self.test_partner.email) def test_bad_emails(self): """Test rejection of bad emails.""" with self.assertRaises(ValidationError): - self.test_partner.email = 'good@domain.com,bad@email@domain..com' + self.test_partner.email = "good@domain.com,bad@email@domain..com" def test_good_emails(self): """Test acceptance of good""" - self.test_partner.email = 'goodemail@domain.com,goodemail2@domain.com' + self.test_partner.email = "goodemail@domain.com,goodemail2@domain.com" self.assertTrue(self.test_partner.email) def test_email_domain_normalization(self): """Test normalization of email domain names, including punycode.""" - self.test_partner.write({'email': 'goodemail@xn--xamPle-9ua.com'}) - self.assertEqual(self.test_partner.email, u'goodemail@éxample.com') + self.test_partner.write({"email": "goodemail@xn--xamPle-9ua.com"}) + self.assertEqual(self.test_partner.email, u"goodemail@éxample.com") def test_multi_email_domain_normalization(self): """Test normalization of email domain names of multiple addresses.""" - self.test_partner.write({ - 'email': 'goodemail@doMAIN.com,othergood@xn--xample-9ua.com' - }) + self.test_partner.write( + {"email": "goodemail@doMAIN.com,othergood@xn--xample-9ua.com"} + ) self.assertEqual( - self.test_partner.email, - u'goodemail@domain.com,othergood@éxample.com' + self.test_partner.email, u"goodemail@domain.com,othergood@éxample.com" ) def test_email_local_normalization(self): """Test normalization of the local part of email addresses.""" - self.test_partner.write({'email': 'Me@mail.org'}) + self.test_partner.write({"email": "Me@mail.org"}) # .lower() is locale-dependent, so don't hardcode the result - self.assertEqual(self.test_partner.email, 'Me'.lower() + '@mail.org') + self.assertEqual(self.test_partner.email, "Me".lower() + "@mail.org") def test_multi_email_local_normalization(self): """Test normalization of the local part of multiple addresses.""" - self.test_partner.write({'email': 'You@mAiL.net,mE@mail.com'}) + self.test_partner.write({"email": "You@mAiL.net,mE@mail.com"}) self.assertEqual( self.test_partner.email, - 'You'.lower() + '@mail.net,' + 'mE'.lower() + '@mail.com' + "You".lower() + "@mail.net," + "mE".lower() + "@mail.com", ) def disallow_duplicates(self): @@ -78,33 +75,24 @@ class TestPartnerEmailCheck(TransactionCase): def test_duplicate_addresses_disallowed(self): self.disallow_duplicates() - self.test_partner.write({'email': 'email@domain.tld'}) - with self.assertRaises(ValidationError): - self.res_partner.create({ - 'name': 'alsotest', - 'email': 'email@domain.tld' - }) + self.test_partner.write({"email": "email@domain.tld"}) + with self.assertRaises(UserError): + self.res_partner.create({"name": "alsotest", "email": "email@domain.tld"}) def test_duplicate_after_normalization_addresses_disallowed(self): self.disallow_duplicates() - self.res_partner.create({ - 'name': 'alsotest', - 'email': 'email@doMAIN.tld' - }) - with self.assertRaises(ValidationError): - self.test_partner.email = 'email@domain.tld' + self.res_partner.create({"name": "alsotest", "email": "email@doMAIN.tld"}) + with self.assertRaises(UserError): + self.test_partner.email = "email@domain.tld" def test_multiple_addresses_disallowed_when_duplicates_filtered(self): self.disallow_duplicates() - with self.assertRaises(ValidationError): - self.test_partner.email = 'foo@bar.org,email@domain.tld' + with self.assertRaises(UserError): + self.test_partner.email = "foo@bar.org,email@domain.tld" def test_duplicate_addresses_allowed_by_default(self): - self.res_partner.create({ - 'name': 'alsotest', - 'email': 'email@domain.tld', - }) - self.test_partner.email = 'email@domain.tld' + self.res_partner.create({"name": "alsotest", "email": "email@domain.tld"}) + self.test_partner.email = "email@domain.tld" def check_deliverability(self): self.wizard.partner_email_check_check_deliverability = True @@ -113,7 +101,7 @@ class TestPartnerEmailCheck(TransactionCase): def test_deliverable_addresses_allowed(self): self.check_deliverability() # We only need a resolving domain, not a real user - self.test_partner.email = 'gooddomain-icraglusrk@gmail.com' + self.test_partner.email = "gooddomain-icraglusrk@gmail.com" self.assertTrue(self.test_partner.email) def test_nondeliverable_addresses_not_allowed(self): @@ -122,40 +110,38 @@ class TestPartnerEmailCheck(TransactionCase): # This domain may resolve by mistake on certain network setups # At least until a new version of email-validator is released # See https://github.com/JoshData/python-email-validator/pull/30 - self.test_partner.email = 'cezrik@acoa.nrdkt' + self.test_partner.email = "cezrik@acoa.nrdkt" def test_config_getters(self): - other_wizard = self.env['res.config.settings'].create({}) + other_wizard = self.env["res.config.settings"].create({}) self.assertFalse(other_wizard.partner_email_check_check_deliverability) self.assertFalse(other_wizard.partner_email_check_filter_duplicates) self.disallow_duplicates() self.check_deliverability() - other_wizard = self.env['res.config.settings'].create({}) + other_wizard = self.env["res.config.settings"].create({}) self.assertTrue(other_wizard.partner_email_check_check_deliverability) self.assertTrue(other_wizard.partner_email_check_filter_duplicates) - @mute_logger('odoo.addons.partner_email_check.models.res_partner') + @mute_logger("odoo.addons.partner_email_check.models.res_partner") def test_lacking_dependency_does_not_halt_execution(self): - with patch('odoo.addons.partner_email_check.models.res_partner.' - 'validate_email', None): - self.test_partner.email = 'notatallvalid@@domain' + with patch( + "odoo.addons.partner_email_check.models.res_partner." "validate_email", None + ): + self.test_partner.email = "notatallvalid@@domain" - @mute_logger('odoo.addons.partner_email_check.models.res_partner') + @mute_logger("odoo.addons.partner_email_check.models.res_partner") def test_lacking_dependency_keeps_uniqueness_constraint_working(self): self.disallow_duplicates() - with patch('odoo.addons.partner_email_check.models.res_partner.' - 'validate_email', None): - self.res_partner.create({ - 'name': 'alsotest', - 'email': 'email@domain.tld' - }) - with self.assertRaises(ValidationError): - self.test_partner.email = 'email@domain.tld' + with patch( + "odoo.addons.partner_email_check.models.res_partner." "validate_email", None + ): + self.res_partner.create({"name": "alsotest", "email": "email@domain.tld"}) + with self.assertRaises(UserError): + self.test_partner.email = "email@domain.tld" def test_invalid_email_addresses_allowed_during_tests(self): # Note: testing without test_partner_email_check in the context - new_partner = self.env['res.partner'].create({ - 'name': 'invalidly emailed', - 'email': 'invalid' - }) - self.assertEqual('invalid', new_partner.email) + new_partner = self.env["res.partner"].create( + {"name": "invalidly emailed", "email": "invalid"} + ) + self.assertEqual("invalid", new_partner.email) diff --git a/partner_email_check/views/base_config_view.xml b/partner_email_check/views/base_config_view.xml index 3bc93e759..1829b4490 100644 --- a/partner_email_check/views/base_config_view.xml +++ b/partner_email_check/views/base_config_view.xml @@ -1,15 +1,13 @@ - + partner_email_check res.config.settings - + - +

Email validation

-
+
From 6b79fc2112de350fde5c00c481bb5192386b8738 Mon Sep 17 00:00:00 2001 From: Quentin Groulard Date: Mon, 5 Jul 2021 18:16:49 +0200 Subject: [PATCH 15/21] [FIX] Remove email from copy data if duplicates not allowed [REF] Partner email chack params on company [IMP] email_check [IMP] test partner_email_check use SavepointCase --- .../migrations/13.0.1.0.0/post-migration.py | 24 +++++++++++ partner_email_check/models/__init__.py | 1 + partner_email_check/models/res_company.py | 18 ++++++++ .../models/res_config_settings.py | 36 ++-------------- partner_email_check/models/res_partner.py | 25 ++++++----- .../tests/test_partner_email_check.py | 42 ++++++++----------- .../views/base_config_view.xml | 14 +++++++ 7 files changed, 90 insertions(+), 70 deletions(-) create mode 100644 partner_email_check/migrations/13.0.1.0.0/post-migration.py create mode 100644 partner_email_check/models/res_company.py diff --git a/partner_email_check/migrations/13.0.1.0.0/post-migration.py b/partner_email_check/migrations/13.0.1.0.0/post-migration.py new file mode 100644 index 000000000..08c9e3fac --- /dev/null +++ b/partner_email_check/migrations/13.0.1.0.0/post-migration.py @@ -0,0 +1,24 @@ +# Copyright 2021 ACSONE SA/NV +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from openupgradelib import openupgrade + + +@openupgrade.migrate(use_env=True) +def migrate(env, version): + param_duplicate = env["ir.config_parameter"].search( + [("key", "=", "partner_email_check_filter_duplicates")] + ) + if param_duplicate: + env["res.company"].search([]).write( + {"partner_email_check_filter_duplicates": param_duplicate.value} + ) + param_duplicate.unlink() + param_deliverability = env["ir.config_parameter"].search( + [("key", "=", "partner_email_check_check_deliverability")] + ) + if param_deliverability: + env["res.company"].search([]).write( + {"partner_email_check_check_deliverability": param_deliverability.value} + ) + param_deliverability.unlink() diff --git a/partner_email_check/models/__init__.py b/partner_email_check/models/__init__.py index cf1724192..9483b9bfe 100644 --- a/partner_email_check/models/__init__.py +++ b/partner_email_check/models/__init__.py @@ -1,4 +1,5 @@ # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). +from . import res_company from . import res_config_settings from . import res_partner diff --git a/partner_email_check/models/res_company.py b/partner_email_check/models/res_company.py new file mode 100644 index 000000000..7bcf0c88d --- /dev/null +++ b/partner_email_check/models/res_company.py @@ -0,0 +1,18 @@ +# Copyright 2021 ACSONE SA/NV +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo import fields, models + + +class ResCompany(models.Model): + + _inherit = "res.company" + + partner_email_check_filter_duplicates = fields.Boolean( + string="Filter duplicate partner email addresses", + help="Don't allow multiple partners to have the same email address.", + ) + partner_email_check_check_deliverability = fields.Boolean( + string="Check deliverability of email addresses", + help="Don't allow email addresses with providers that don't exist", + ) diff --git a/partner_email_check/models/res_config_settings.py b/partner_email_check/models/res_config_settings.py index 07e8b6769..dee2dd2fb 100644 --- a/partner_email_check/models/res_config_settings.py +++ b/partner_email_check/models/res_config_settings.py @@ -1,43 +1,13 @@ -from odoo import api, fields, models +from odoo import fields, models class ResConfigSettings(models.TransientModel): _inherit = "res.config.settings" partner_email_check_filter_duplicates = fields.Boolean( - string="Filter duplicate partner email addresses", - help="Don't allow multiple partners to have the same email address.", + related="company_id.partner_email_check_filter_duplicates", readonly=False, ) partner_email_check_check_deliverability = fields.Boolean( - string="Check deliverability of email addresses", - help="Don't allow email addresses with providers that don't exist", + related="company_id.partner_email_check_check_deliverability", readonly=False, ) - - @api.model - def get_values(self): - res = super(ResConfigSettings, self).get_values() - conf = self.env["ir.config_parameter"].sudo() - res.update( - partner_email_check_filter_duplicates=conf.get_param( - "partner_email_check_filter_duplicates", "False" - ) - == "True", - partner_email_check_check_deliverability=conf.get_param( - "partner_email_check_check_deliverability", "False" - ) - == "True", - ) - return res - - def set_values(self): - super(ResConfigSettings, self).set_values() - conf = self.env["ir.config_parameter"].sudo() - conf.set_param( - "partner_email_check_filter_duplicates", - self.partner_email_check_filter_duplicates, - ) - conf.set_param( - "partner_email_check_check_deliverability", - self.partner_email_check_check_deliverability, - ) diff --git a/partner_email_check/models/res_partner.py b/partner_email_check/models/res_partner.py index d0b0eede4..cb41c24f7 100644 --- a/partner_email_check/models/res_partner.py +++ b/partner_email_check/models/res_partner.py @@ -24,6 +24,13 @@ except ImportError: class ResPartner(models.Model): _inherit = "res.partner" + def copy_data(self, default=None): + res = super(ResPartner, self).copy_data(default=default) + if self._should_filter_duplicates(): + for copy_vals in res: + copy_vals.pop("email", None) + return res + @api.model def email_check(self, emails): if config["test_enable"] and not self.env.context.get( @@ -31,7 +38,9 @@ class ResPartner(models.Model): ): return emails return ",".join( - self._normalize_email(email.strip()) for email in emails.split(",") + self._normalize_email(email.strip()) + for email in emails.split(",") + if email.strip() ) @api.constrains("email") @@ -72,20 +81,10 @@ class ResPartner(models.Model): return result["local"].lower() + "@" + result["domain_i18n"] def _should_filter_duplicates(self): - conf = ( - self.env["ir.config_parameter"] - .sudo() - .get_param("partner_email_check_filter_duplicates", "False") - ) - return conf == "True" + return self.env.company.partner_email_check_filter_duplicates def _should_check_deliverability(self): - conf = ( - self.env["ir.config_parameter"] - .sudo() - .get_param("partner_email_check_check_deliverability", "False") - ) - return conf == "True" + return self.env.company.partner_email_check_check_deliverability @api.model def create(self, vals): diff --git a/partner_email_check/tests/test_partner_email_check.py b/partner_email_check/tests/test_partner_email_check.py index ef6f8a508..6b3c5b5b4 100644 --- a/partner_email_check/tests/test_partner_email_check.py +++ b/partner_email_check/tests/test_partner_email_check.py @@ -4,22 +4,22 @@ from unittest.mock import patch from odoo.exceptions import UserError, ValidationError -from odoo.tests.common import TransactionCase +from odoo.tests.common import SavepointCase from odoo.tools.misc import mute_logger -class TestPartnerEmailCheck(TransactionCase): - def setUp(self): - super(TestPartnerEmailCheck, self).setUp() +class TestPartnerEmailCheck(SavepointCase): + @classmethod + def setUpClass(cls): + super().setUpClass() + cls.env = cls.env(context=dict(cls.env.context, tracking_disable=True)) # Checks are disabled during tests unless this key is set - self.res_partner = self.env["res.partner"].with_context( + cls.res_partner = cls.env["res.partner"].with_context( test_partner_email_check=True ) - self.test_partner = self.res_partner.create({"name": "test"}) - self.wizard = self.env["res.config.settings"].create({}) - self.wizard.partner_email_check_filter_duplicates = False - self.wizard.partner_email_check_check_deliverability = False - self.wizard.set_values() + cls.test_partner = cls.res_partner.create({"name": "test"}) + cls.env.company.partner_email_check_filter_duplicates = False + cls.env.company.partner_email_check_check_deliverability = False def test_bad_email(self): """Test rejection of bad emails.""" @@ -70,8 +70,7 @@ class TestPartnerEmailCheck(TransactionCase): ) def disallow_duplicates(self): - self.wizard.partner_email_check_filter_duplicates = True - self.wizard.set_values() + self.env.company.partner_email_check_filter_duplicates = True def test_duplicate_addresses_disallowed(self): self.disallow_duplicates() @@ -90,13 +89,18 @@ class TestPartnerEmailCheck(TransactionCase): with self.assertRaises(UserError): self.test_partner.email = "foo@bar.org,email@domain.tld" + def test_duplicate_addresses_disallowed_copy_partner(self): + self.disallow_duplicates() + self.test_partner.write({"email": "email@domain.tld"}) + partner_copy = self.test_partner.copy() + self.assertFalse(partner_copy.email) + def test_duplicate_addresses_allowed_by_default(self): self.res_partner.create({"name": "alsotest", "email": "email@domain.tld"}) self.test_partner.email = "email@domain.tld" def check_deliverability(self): - self.wizard.partner_email_check_check_deliverability = True - self.wizard.set_values() + self.env.company.partner_email_check_check_deliverability = True def test_deliverable_addresses_allowed(self): self.check_deliverability() @@ -112,16 +116,6 @@ class TestPartnerEmailCheck(TransactionCase): # See https://github.com/JoshData/python-email-validator/pull/30 self.test_partner.email = "cezrik@acoa.nrdkt" - def test_config_getters(self): - other_wizard = self.env["res.config.settings"].create({}) - self.assertFalse(other_wizard.partner_email_check_check_deliverability) - self.assertFalse(other_wizard.partner_email_check_filter_duplicates) - self.disallow_duplicates() - self.check_deliverability() - other_wizard = self.env["res.config.settings"].create({}) - self.assertTrue(other_wizard.partner_email_check_check_deliverability) - self.assertTrue(other_wizard.partner_email_check_filter_duplicates) - @mute_logger("odoo.addons.partner_email_check.models.res_partner") def test_lacking_dependency_does_not_halt_execution(self): with patch( diff --git a/partner_email_check/views/base_config_view.xml b/partner_email_check/views/base_config_view.xml index 1829b4490..1af3aed0f 100644 --- a/partner_email_check/views/base_config_view.xml +++ b/partner_email_check/views/base_config_view.xml @@ -14,6 +14,13 @@