From 14fbe518bcbf6d918864a183a403c14aef7447f2 Mon Sep 17 00:00:00 2001 From: Sergio Teruel Albert Date: Wed, 24 May 2017 17:17:04 +0200 Subject: [PATCH 01/10] [ADD] event_mail: New module for events mail settings (#76) --- event_mail/README.rst | 62 +++++++++++ event_mail/__init__.py | 4 + event_mail/__manifest__.py | 22 ++++ event_mail/i18n/es.po | 141 ++++++++++++++++++++++++ event_mail/i18n/event_mail.pot | 134 ++++++++++++++++++++++ event_mail/models/__init__.py | 6 + event_mail/models/event.py | 46 ++++++++ event_mail/models/event_mail.py | 35 ++++++ event_mail/models/res_config.py | 20 ++++ event_mail/security/ir.model.access.csv | 5 + event_mail/static/description/icon.png | Bin 0 -> 9455 bytes event_mail/tests/__init__.py | 3 + event_mail/tests/test_event_mail.py | 84 ++++++++++++++ event_mail/views/event_mail_view.xml | 44 ++++++++ event_mail/views/event_view.xml | 17 +++ event_mail/views/res_config_view.xml | 22 ++++ 16 files changed, 645 insertions(+) create mode 100644 event_mail/README.rst create mode 100644 event_mail/__init__.py create mode 100644 event_mail/__manifest__.py create mode 100644 event_mail/i18n/es.po create mode 100644 event_mail/i18n/event_mail.pot create mode 100644 event_mail/models/__init__.py create mode 100644 event_mail/models/event.py create mode 100644 event_mail/models/event_mail.py create mode 100644 event_mail/models/res_config.py create mode 100644 event_mail/security/ir.model.access.csv create mode 100644 event_mail/static/description/icon.png create mode 100644 event_mail/tests/__init__.py create mode 100644 event_mail/tests/test_event_mail.py create mode 100644 event_mail/views/event_mail_view.xml create mode 100644 event_mail/views/event_view.xml create mode 100644 event_mail/views/res_config_view.xml diff --git a/event_mail/README.rst b/event_mail/README.rst new file mode 100644 index 000000000..a6099bfd0 --- /dev/null +++ b/event_mail/README.rst @@ -0,0 +1,62 @@ +.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg + :alt: License: AGPL-3 + +========== +Event Mail +========== + +This module allows to define mail settings for events. By default the emails +scheduler has been deactivated. +You can create mail scheduler templates for events and select one by default +in event settings. + +Usage +===== + +To use this module, you need to: + +#. Go to *Events > Configuration > Mail Templates* and create all templates + that you need. +#. Go to *Events > Settings* and select the default template in + "Template Mail Scheduler" field. +#. Go to *Events > Events* and create one. All mails schedulers has been + created. Also you can select other template in "Mail Template Scheduler" + field on "Email Schedule" tab. + + + +.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas + :alt: Try me on Runbot + :target: https://runbot.odoo-community.org/runbot/199/10.0 + + +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 smash it by providing detailed and welcomed feedback. + +Credits +======= + +Contributors +------------ + +* Sergio Teruel + +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 http://odoo-community.org. diff --git a/event_mail/__init__.py b/event_mail/__init__.py new file mode 100644 index 000000000..ec50cfc0f --- /dev/null +++ b/event_mail/__init__.py @@ -0,0 +1,4 @@ +# -*- coding: utf-8 -*- +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import models diff --git a/event_mail/__manifest__.py b/event_mail/__manifest__.py new file mode 100644 index 000000000..7dffe5885 --- /dev/null +++ b/event_mail/__manifest__.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +# © 2016 Sergio Teruel +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +{ + 'name': 'Event Mail', + 'summary': 'Mail settings in events', + 'version': '10.0.1.0.0', + 'author': 'Tecnativa, ' + 'Odoo Community Association (OCA)', + "license": "AGPL-3", + 'website': 'https://odoo-community.org/', + 'category': 'Marketing', + 'depends': ['event'], + 'data': [ + 'security/ir.model.access.csv', + 'views/res_config_view.xml', + 'views/event_view.xml', + 'views/event_mail_view.xml', + ], + 'installable': True, +} diff --git a/event_mail/i18n/es.po b/event_mail/i18n/es.po new file mode 100644 index 000000000..a425aa5a1 --- /dev/null +++ b/event_mail/i18n/es.po @@ -0,0 +1,141 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * event_mail +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2017-04-28 10:06+0200\n" +"PO-Revision-Date: 2017-04-28 10:11+0200\n" +"Last-Translator: David \n" +"Language-Team: \n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.8.7.1\n" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_uid +msgid "Created by" +msgstr "Creado por" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_date +msgid "Created on" +msgstr "Creado el" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_display_name +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_display_name +msgid "Display Name" +msgstr "Nombre a mostrar" + +#. module: event_mail +#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +msgid "Email Schedule" +msgstr "Programación de Correo Electrónico" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_event +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_id +msgid "Event" +msgstr "Evento" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_mail_template_id +#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +msgid "Event Mail Template" +msgstr "Plantilla de emails" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_id +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_4770 +#, fuzzy +msgid "ID" +msgstr "ID" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template___last_update +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template___last_update +msgid "Last Modified on" +msgstr "Última modificación en" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_uid +msgid "Last Updated by" +msgstr "Última actualización por" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_date +msgid "Last Updated on" +msgstr "Última actualización el" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_scheduler_template_ids +msgid "Mail Schedule" +msgstr "Programación de correo" + +#. module: event_mail +#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +msgid "Mail Scheduler" +msgstr "Programador de Correo Electrónico" + +#. module: event_mail +#: model:ir.actions.act_window,name:event_mail.act_event_mail_template +msgid "Mail Scheduler Template" +msgstr "Plantilla de programación de correo" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_config_settings_event_mail_template_id +msgid "Mail Template" +msgstr "Plantilla de mail" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_event_event_mail_template_id +msgid "Mail Template Scheduler" +msgstr "Plantilla de programación de correo" + +#. module: event_mail +#: model:ir.ui.menu,name:event_mail.menu_event_mail_template +msgid "Mail Templates" +msgstr "Plantillas de correo" + +#. module: event_mail +#: model:ir.ui.view,arch_db:event_mail.view_event_configuration +msgid "Mail options" +msgstr "Opciones de correo" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_name +msgid "Name" +msgstr "Nombre" + +#. module: event_mail +#: model:ir.ui.view,arch_db:event_mail.view_event_configuration +msgid "Template Mail Scheduler" +msgstr "Plantilla de programación de correo" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_config_settings +#, fuzzy +msgid "event.config.settings" +msgstr "event.config.settings" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_mail_scheduler_template +#, fuzzy +msgid "event.mail.scheduler.template" +msgstr "event.mail.scheduler.template" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_mail_template +#, fuzzy +msgid "event.mail.template" +msgstr "event.mail.template" diff --git a/event_mail/i18n/event_mail.pot b/event_mail/i18n/event_mail.pot new file mode 100644 index 000000000..018448056 --- /dev/null +++ b/event_mail/i18n/event_mail.pot @@ -0,0 +1,134 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * event_mail +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.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: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_uid +msgid "Created by" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_date +msgid "Created on" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_display_name +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_display_name +msgid "Display Name" +msgstr "" + +#. module: event_mail +#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +msgid "Email Schedule" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_event +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_id +msgid "Event" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_mail_template_id +#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +msgid "Event Mail Template" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_id +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_4770 +msgid "ID" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template___last_update +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template___last_update +msgid "Last Modified on" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_uid +msgid "Last Updated by" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_date +msgid "Last Updated on" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_scheduler_template_ids +msgid "Mail Schedule" +msgstr "" + +#. module: event_mail +#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +msgid "Mail Scheduler" +msgstr "" + +#. module: event_mail +#: model:ir.actions.act_window,name:event_mail.act_event_mail_template +msgid "Mail Scheduler Template" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_config_settings_event_mail_template_id +msgid "Mail Template" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_event_event_mail_template_id +msgid "Mail Template Scheduler" +msgstr "" + +#. module: event_mail +#: model:ir.ui.menu,name:event_mail.menu_event_mail_template +msgid "Mail Templates" +msgstr "" + +#. module: event_mail +#: model:ir.ui.view,arch_db:event_mail.view_event_configuration +msgid "Mail options" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_name +msgid "Name" +msgstr "" + +#. module: event_mail +#: model:ir.ui.view,arch_db:event_mail.view_event_configuration +msgid "Template Mail Scheduler" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_config_settings +msgid "event.config.settings" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_mail_scheduler_template +msgid "event.mail.scheduler.template" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_mail_template +msgid "event.mail.template" +msgstr "" + diff --git a/event_mail/models/__init__.py b/event_mail/models/__init__.py new file mode 100644 index 000000000..c512a46d9 --- /dev/null +++ b/event_mail/models/__init__.py @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from . import res_config +from . import event +from . import event_mail diff --git a/event_mail/models/event.py b/event_mail/models/event.py new file mode 100644 index 000000000..0605c0241 --- /dev/null +++ b/event_mail/models/event.py @@ -0,0 +1,46 @@ +# -*- coding: utf-8 -*- +# Copyright 2017 Sergio Teruel +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import api, fields, models + + +class EventEvent(models.Model): + _inherit = 'event.event' + + @api.model + def _default_event_mail_template_id(self): + return self.env['ir.values'].get_default( + 'event.config.settings', 'event_mail_template_id') + + event_mail_template_id = fields.Many2one( + comodel_name='event.mail.template', + string='Mail Template Scheduler', + default=_default_event_mail_template_id, + ) + + @api.onchange('event_mail_template_id') + def _onchange_event_mail_template_id(self): + vals = [(6, 0, [])] + if self.event_mail_template_id.exists(): + for scheduler in \ + self.event_mail_template_id.scheduler_template_ids: + vals.append((0, 0, { + 'interval_nbr': scheduler.interval_nbr, + 'interval_unit': scheduler.interval_unit, + 'interval_type': scheduler.interval_type, + 'template_id': scheduler.template_id.id, + })) + self.event_mail_ids = vals + + @api.model + def _default_event_mail_ids(self): + if self.env.context.get('by_pass_config_template', False): + return super(EventEvent, self)._default_event_mail_ids() + + event_mail_template_id = self.env['ir.values'].get_default( + 'event.config.settings', 'event_mail_template_id') + if event_mail_template_id: + return super(EventEvent, self)._default_event_mail_ids() + else: + return [] diff --git a/event_mail/models/event_mail.py b/event_mail/models/event_mail.py new file mode 100644 index 000000000..c730656a5 --- /dev/null +++ b/event_mail/models/event_mail.py @@ -0,0 +1,35 @@ +# -*- coding: utf-8 -*- +# Copyright 2017 Sergio Teruel +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo import api, fields, models + + +class EventMailSchedulerTemplate(models.Model): + _name = 'event.mail.scheduler.template' + _inherit = 'event.mail' + + event_id = fields.Many2one(required=False) + event_mail_template_id = fields.Many2one( + comodel_name='event.mail.template', + string='Event Mail Template', + required=True, + ondelete='cascade', + ) + + +class EventMailTemplate(models.Model): + _name = 'event.mail.template' + + @api.model + def _default_scheduler_template_ids(self): + return self.env['event.event'].with_context( + by_pass_config_template=True)._default_event_mail_ids() + + name = fields.Char() + scheduler_template_ids = fields.One2many( + comodel_name='event.mail.scheduler.template', + inverse_name='event_mail_template_id', + string='Mail Schedule', + default=_default_scheduler_template_ids, + ) diff --git a/event_mail/models/res_config.py b/event_mail/models/res_config.py new file mode 100644 index 000000000..0252cc86a --- /dev/null +++ b/event_mail/models/res_config.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +# © 2016 Sergio Teruel +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from odoo import api, fields, models + + +class EventMailConfigSettings(models.TransientModel): + _inherit = 'event.config.settings' + + event_mail_template_id = fields.Many2one( + comodel_name='event.mail.template', + string='Mail Template', + ) + + @api.multi + def set_default_event_mail_template_id(self): + self.env['ir.values'].set_default( + 'event.config.settings', 'event_mail_template_id', + self.event_mail_template_id.id) diff --git a/event_mail/security/ir.model.access.csv b/event_mail/security/ir.model.access.csv new file mode 100644 index 000000000..04ebb0054 --- /dev/null +++ b/event_mail/security/ir.model.access.csv @@ -0,0 +1,5 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_event_mail_template_user,access_event_mail_template_user,event_mail.model_event_mail_template,event.group_event_user,1,0,0,0 +access_event_mail_template_manager,access_event_mail_template_manager,event_mail.model_event_mail_template,event.group_event_manager,1,1,1,1 +event_mail_scheduler_template_user,access_event_mail_scheduler_template_user,event_mail.model_event_mail_scheduler_template,event.group_event_user,1,0,0,0 +event_mail_scheduler_template_manager,access_event_mail_scheduler_template_manager,event_mail.model_event_mail_scheduler_template,event.group_event_manager,1,1,1,1 diff --git a/event_mail/static/description/icon.png b/event_mail/static/description/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..3a0328b516c4980e8e44cdb63fd945757ddd132d GIT binary patch literal 9455 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 z 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 Xviia!U7SGha1wx#SCgwmn*{w2TRX*I literal 0 HcmV?d00001 diff --git a/event_mail/tests/__init__.py b/event_mail/tests/__init__.py new file mode 100644 index 000000000..3b67ec3f8 --- /dev/null +++ b/event_mail/tests/__init__.py @@ -0,0 +1,3 @@ +# -*- coding: utf-8 -*- + +from . import test_event_mail diff --git a/event_mail/tests/test_event_mail.py b/event_mail/tests/test_event_mail.py new file mode 100644 index 000000000..96bcc28a0 --- /dev/null +++ b/event_mail/tests/test_event_mail.py @@ -0,0 +1,84 @@ +# -*- coding: utf-8 -*- +# Copyright 2017 Sergio Teruel +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). + +from odoo.tests.common import SavepointCase + + +class EventMailCase(SavepointCase): + + @classmethod + def setUpClass(self): + """Add some defaults to let the test run without an accounts chart.""" + super(EventMailCase, self).setUpClass() + self.template1 = self.env['event.mail.template'].create({ + 'name': 'Template test 01', + }) + self.template2 = self.env['event.mail.template'].create({ + 'name': 'Template test 01', + 'scheduler_template_ids': [(0, 0, { + 'interval_nbr': 15, + 'interval_unit': 'days', + 'interval_type': 'before_event', + 'template_id': self.env.ref('event.event_reminder').id})], + }) + + def test_event_template_config(self): + # Store default template in event settings + event_config = self.env['event.config.settings'].sudo().create({ + 'event_mail_template_id': self.template1.id, + 'auto_confirmation': 1, + }) + event_config.execute() + config_template_id = self.env['ir.values'].get_default( + 'event.config.settings', 'event_mail_template_id') + self.assertTrue( + config_template_id, + 'Event Mail: Template store in default values') + + # Create an event + vals = { + 'name': 'Event test', + 'date_begin': '2017-05-01', + 'date_end': '2017-06-01', + 'auto_confirm': False, + 'event_mail_template_id': self.template1.id, + } + event = self.env['event.event'].create(vals) + event._onchange_event_mail_template_id() + self.assertTrue( + event.event_mail_ids, + 'Event Mail: mails scheduler created for this event') + + # Change template in event + event.event_mail_template_id = self.template2 + event._onchange_event_mail_template_id() + self.assertEqual( + len(event.event_mail_ids), 1, + 'Event Mail: mails scheduler only one') + + def test_event_template_no_config(self): + # Store default template in event settings + event_config = self.env['event.config.settings'].sudo().create({ + 'event_mail_template_id': False, + 'auto_confirmation': 1, + }) + event_config.execute() + config_template_id = self.env['ir.values'].get_default( + 'event.config.settings', 'event_mail_template_id') + self.assertFalse( + self.env['event.mail.template'].browse( + config_template_id).exists(), + 'Event Mail: Template are not stored as default values') + + # Create an event + vals = { + 'name': 'Event test', + 'date_begin': '2017-05-01', + 'date_end': '2017-06-01', + 'auto_confirm': False, + } + event = self.env['event.event'].create(vals) + self.assertEqual( + len(event.event_mail_ids), 0, + 'Event Mail: mails scheduler no created for this event') diff --git a/event_mail/views/event_mail_view.xml b/event_mail/views/event_mail_view.xml new file mode 100644 index 000000000..1cfce427c --- /dev/null +++ b/event_mail/views/event_mail_view.xml @@ -0,0 +1,44 @@ + + + + + + event.mail.template.form + event.mail.template + +
+ + + + + + + + + + + + + + + + +
+
+
+ + + event.mail.template + form + Mail Scheduler Template + tree,form + {} + + + + +
diff --git a/event_mail/views/event_view.xml b/event_mail/views/event_view.xml new file mode 100644 index 000000000..6c33ab4be --- /dev/null +++ b/event_mail/views/event_view.xml @@ -0,0 +1,17 @@ + + + + + + event.event + + + + + + + + + diff --git a/event_mail/views/res_config_view.xml b/event_mail/views/res_config_view.xml new file mode 100644 index 000000000..67a53c7df --- /dev/null +++ b/event_mail/views/res_config_view.xml @@ -0,0 +1,22 @@ + + + + + + + event.config.settings + + + + + + + + + + From 45acf7da8655c435e058b5159223e0a6f94e2813 Mon Sep 17 00:00:00 2001 From: William Olhasque Date: Mon, 5 Nov 2018 12:37:42 +0000 Subject: [PATCH 02/10] Added translation using Weblate (French) --- event_mail/i18n/fr.po | 134 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 134 insertions(+) create mode 100644 event_mail/i18n/fr.po diff --git a/event_mail/i18n/fr.po b/event_mail/i18n/fr.po new file mode 100644 index 000000000..ace77c264 --- /dev/null +++ b/event_mail/i18n/fr.po @@ -0,0 +1,134 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * event_mail +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 10.0\n" +"Report-Msgid-Bugs-To: \n" +"Last-Translator: Automatically generated\n" +"Language-Team: none\n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: nplurals=2; plural=n > 1;\n" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_uid +msgid "Created by" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_date +msgid "Created on" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_display_name +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_display_name +msgid "Display Name" +msgstr "" + +#. module: event_mail +#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +msgid "Email Schedule" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_event +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_id +msgid "Event" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_mail_template_id +#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +msgid "Event Mail Template" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_id +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_4770 +msgid "ID" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template___last_update +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template___last_update +msgid "Last Modified on" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_uid +msgid "Last Updated by" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_date +msgid "Last Updated on" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_scheduler_template_ids +msgid "Mail Schedule" +msgstr "" + +#. module: event_mail +#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +msgid "Mail Scheduler" +msgstr "" + +#. module: event_mail +#: model:ir.actions.act_window,name:event_mail.act_event_mail_template +msgid "Mail Scheduler Template" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_config_settings_event_mail_template_id +msgid "Mail Template" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_event_event_mail_template_id +msgid "Mail Template Scheduler" +msgstr "" + +#. module: event_mail +#: model:ir.ui.menu,name:event_mail.menu_event_mail_template +msgid "Mail Templates" +msgstr "" + +#. module: event_mail +#: model:ir.ui.view,arch_db:event_mail.view_event_configuration +msgid "Mail options" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_name +msgid "Name" +msgstr "" + +#. module: event_mail +#: model:ir.ui.view,arch_db:event_mail.view_event_configuration +msgid "Template Mail Scheduler" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_config_settings +msgid "event.config.settings" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_mail_scheduler_template +msgid "event.mail.scheduler.template" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_mail_template +msgid "event.mail.template" +msgstr "" From 15736846be04b79a1bea47a241d04ae6961bd26c Mon Sep 17 00:00:00 2001 From: William Olhasque Date: Mon, 5 Nov 2018 12:37:58 +0000 Subject: [PATCH 03/10] Translated using Weblate (French) Currently translated at 100.0% (22 of 22 strings) Translation: event-10.0/event-10.0-event_mail Translate-URL: https://translation.odoo-community.org/projects/event-10-0/event-10-0-event_mail/fr/ --- event_mail/i18n/fr.po | 48 ++++++++++++++++++++++--------------------- 1 file changed, 25 insertions(+), 23 deletions(-) diff --git a/event_mail/i18n/fr.po b/event_mail/i18n/fr.po index ace77c264..cbcd34596 100644 --- a/event_mail/i18n/fr.po +++ b/event_mail/i18n/fr.po @@ -6,129 +6,131 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 10.0\n" "Report-Msgid-Bugs-To: \n" -"Last-Translator: Automatically generated\n" +"PO-Revision-Date: 2018-11-06 13:26+0000\n" +"Last-Translator: William Olhasque \n" "Language-Team: none\n" "Language: fr\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: \n" "Plural-Forms: nplurals=2; plural=n > 1;\n" +"X-Generator: Weblate 3.2.2\n" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_uid #: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_uid msgid "Created by" -msgstr "" +msgstr "Créé par" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_date #: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_date msgid "Created on" -msgstr "" +msgstr "Créé le" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_display_name #: model:ir.model.fields,field_description:event_mail.field_event_mail_template_display_name msgid "Display Name" -msgstr "" +msgstr "Nom affiché" #. module: event_mail #: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form msgid "Email Schedule" -msgstr "" +msgstr "Planification email" #. module: event_mail #: model:ir.model,name:event_mail.model_event_event #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_id msgid "Event" -msgstr "" +msgstr "Événement" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_mail_template_id #: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form msgid "Event Mail Template" -msgstr "" +msgstr "Modèle mail événement" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_id #: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_4770 msgid "ID" -msgstr "" +msgstr "ID" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template___last_update #: model:ir.model.fields,field_description:event_mail.field_event_mail_template___last_update msgid "Last Modified on" -msgstr "" +msgstr "Dernière modification le" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_uid #: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_uid msgid "Last Updated by" -msgstr "" +msgstr "Dernière modification par" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_date #: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_date msgid "Last Updated on" -msgstr "" +msgstr "Dernière modification le" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_template_scheduler_template_ids msgid "Mail Schedule" -msgstr "" +msgstr "Planification email" #. module: event_mail #: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form msgid "Mail Scheduler" -msgstr "" +msgstr "Planificateur email" #. module: event_mail #: model:ir.actions.act_window,name:event_mail.act_event_mail_template msgid "Mail Scheduler Template" -msgstr "" +msgstr "Modèle planificateur email" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_config_settings_event_mail_template_id msgid "Mail Template" -msgstr "" +msgstr "Modèle d'email" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_event_event_mail_template_id msgid "Mail Template Scheduler" -msgstr "" +msgstr "Modèle de planificateur mail" #. module: event_mail #: model:ir.ui.menu,name:event_mail.menu_event_mail_template msgid "Mail Templates" -msgstr "" +msgstr "Modèles d'e-mail" #. module: event_mail #: model:ir.ui.view,arch_db:event_mail.view_event_configuration msgid "Mail options" -msgstr "" +msgstr "Options e-mail" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_template_name msgid "Name" -msgstr "" +msgstr "Nom" #. module: event_mail #: model:ir.ui.view,arch_db:event_mail.view_event_configuration msgid "Template Mail Scheduler" -msgstr "" +msgstr "Modèle de planificateur email" #. module: event_mail #: model:ir.model,name:event_mail.model_event_config_settings msgid "event.config.settings" -msgstr "" +msgstr "event.config.settings" #. module: event_mail #: model:ir.model,name:event_mail.model_event_mail_scheduler_template msgid "event.mail.scheduler.template" -msgstr "" +msgstr "event.mail.scheduler.template" #. module: event_mail #: model:ir.model,name:event_mail.model_event_mail_template msgid "event.mail.template" -msgstr "" +msgstr "event.mail.template" From f82b85daad560872a3cf1a88546085792e328a5e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marta=20V=C3=A1zquez=20Rodr=C3=ADguez?= Date: Fri, 1 Feb 2019 11:24:12 +0000 Subject: [PATCH 04/10] Translated using Weblate (Spanish) Currently translated at 100.0% (22 of 22 strings) Translation: event-10.0/event-10.0-event_mail Translate-URL: https://translation.odoo-community.org/projects/event-10-0/event-10-0-event_mail/es/ --- event_mail/i18n/es.po | 14 +++++--------- event_mail/i18n/event_mail.pot | 2 +- event_mail/i18n/fr.po | 4 ++-- 3 files changed, 8 insertions(+), 12 deletions(-) diff --git a/event_mail/i18n/es.po b/event_mail/i18n/es.po index a425aa5a1..027fe85e4 100644 --- a/event_mail/i18n/es.po +++ b/event_mail/i18n/es.po @@ -7,15 +7,15 @@ msgstr "" "Project-Id-Version: Odoo Server 10.0\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2017-04-28 10:06+0200\n" -"PO-Revision-Date: 2017-04-28 10:11+0200\n" -"Last-Translator: David \n" +"PO-Revision-Date: 2019-02-01 14:03+0000\n" +"Last-Translator: Marta Vázquez Rodríguez \n" "Language-Team: \n" "Language: es\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 1.8.7.1\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Weblate 3.4\n" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_uid @@ -54,8 +54,7 @@ msgstr "Plantilla de emails" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_id -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_4770 -#, fuzzy +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_5067 msgid "ID" msgstr "ID" @@ -124,18 +123,15 @@ msgstr "Plantilla de programación de correo" #. module: event_mail #: model:ir.model,name:event_mail.model_event_config_settings -#, fuzzy msgid "event.config.settings" msgstr "event.config.settings" #. module: event_mail #: model:ir.model,name:event_mail.model_event_mail_scheduler_template -#, fuzzy msgid "event.mail.scheduler.template" msgstr "event.mail.scheduler.template" #. module: event_mail #: model:ir.model,name:event_mail.model_event_mail_template -#, fuzzy msgid "event.mail.template" msgstr "event.mail.template" diff --git a/event_mail/i18n/event_mail.pot b/event_mail/i18n/event_mail.pot index 018448056..374a053e5 100644 --- a/event_mail/i18n/event_mail.pot +++ b/event_mail/i18n/event_mail.pot @@ -50,7 +50,7 @@ msgstr "" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_id -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_4770 +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_5067 msgid "ID" msgstr "" diff --git a/event_mail/i18n/fr.po b/event_mail/i18n/fr.po index cbcd34596..a5b1f5ca3 100644 --- a/event_mail/i18n/fr.po +++ b/event_mail/i18n/fr.po @@ -1,6 +1,6 @@ # Translation of Odoo Server. # This file contains the translation of the following modules: -# * event_mail +# * event_mail # msgid "" msgstr "" @@ -53,7 +53,7 @@ msgstr "Modèle mail événement" #. module: event_mail #: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_id -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_4770 +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_5067 msgid "ID" msgstr "ID" From 7b8c2f63c7771f6c217630ae98e01f030dae38d4 Mon Sep 17 00:00:00 2001 From: David Date: Mon, 6 May 2019 13:09:26 +0200 Subject: [PATCH 05/10] [12.0] event_mail: Migration to 12.0 --- event_mail/README.rst | 72 ++-- event_mail/__init__.py | 2 - event_mail/__manifest__.py | 7 +- event_mail/i18n/es.po | 188 ++++++++-- event_mail/i18n/event_mail.pot | 176 +++++++-- event_mail/i18n/fr.po | 188 ++++++++-- event_mail/models/__init__.py | 10 +- event_mail/models/event.py | 25 +- event_mail/models/event_mail.py | 9 +- event_mail/models/event_type.py | 23 ++ event_mail/models/res_company.py | 12 + event_mail/models/res_config.py | 20 - event_mail/models/res_config_settings.py | 15 + event_mail/readme/CONTRIBUTORS.rst | 4 + event_mail/readme/DESCRIPTION.rst | 4 + event_mail/readme/USAGE.rst | 9 + event_mail/static/description/index.html | 443 +++++++++++++++++++++++ event_mail/tests/__init__.py | 2 - event_mail/tests/test_event_mail.py | 16 +- event_mail/views/event_mail_view.xml | 2 +- event_mail/views/event_view.xml | 4 +- event_mail/views/res_config_view.xml | 32 +- 22 files changed, 1070 insertions(+), 193 deletions(-) create mode 100644 event_mail/models/event_type.py create mode 100644 event_mail/models/res_company.py delete mode 100644 event_mail/models/res_config.py create mode 100644 event_mail/models/res_config_settings.py create mode 100644 event_mail/readme/CONTRIBUTORS.rst create mode 100644 event_mail/readme/DESCRIPTION.rst create mode 100644 event_mail/readme/USAGE.rst create mode 100644 event_mail/static/description/index.html diff --git a/event_mail/README.rst b/event_mail/README.rst index a6099bfd0..23e03acd0 100644 --- a/event_mail/README.rst +++ b/event_mail/README.rst @@ -1,15 +1,40 @@ -.. image:: https://img.shields.io/badge/licence-AGPL--3-blue.svg - :alt: License: AGPL-3 - ========== Event Mail ========== +.. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + !! 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%2Fevent-lightgray.png?logo=github + :target: https://github.com/OCA/event/tree/12.0/event_mail + :alt: OCA/event +.. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png + :target: https://translation.odoo-community.org/projects/event-12-0/event-12-0-event_mail + :alt: Translate me on Weblate +.. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png + :target: https://runbot.odoo-community.org/runbot/199/12.0 + :alt: Try me on Runbot + +|badge1| |badge2| |badge3| |badge4| |badge5| + This module allows to define mail settings for events. By default the emails scheduler has been deactivated. You can create mail scheduler templates for events and select one by default in event settings. +**Table of contents** + +.. contents:: + :local: + Usage ===== @@ -23,40 +48,45 @@ To use this module, you need to: created. Also you can select other template in "Mail Template Scheduler" field on "Email Schedule" tab. - - -.. image:: https://odoo-community.org/website/image/ir.attachment/5784_f2813bd/datas - :alt: Try me on Runbot - :target: https://runbot.odoo-community.org/runbot/199/10.0 - - 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 smash it by providing 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 ======= +Authors +~~~~~~~ + +* Tecnativa + Contributors ------------- +~~~~~~~~~~~~ + +* `Tecnativa `__: -* Sergio Teruel + * Sergio Teruel + * David Vidal -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 http://odoo-community.org. +This module is part of the `OCA/event `_ project on GitHub. + +You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/event_mail/__init__.py b/event_mail/__init__.py index ec50cfc0f..02179fb04 100644 --- a/event_mail/__init__.py +++ b/event_mail/__init__.py @@ -1,4 +1,2 @@ -# -*- coding: utf-8 -*- # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - from . import models diff --git a/event_mail/__manifest__.py b/event_mail/__manifest__.py index 7dffe5885..51fb726c2 100644 --- a/event_mail/__manifest__.py +++ b/event_mail/__manifest__.py @@ -1,15 +1,14 @@ -# -*- coding: utf-8 -*- -# © 2016 Sergio Teruel +# Copyright 2017 Tecnativa - Sergio Teruel # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). { 'name': 'Event Mail', 'summary': 'Mail settings in events', - 'version': '10.0.1.0.0', + 'version': '12.0.1.0.0', 'author': 'Tecnativa, ' 'Odoo Community Association (OCA)', "license": "AGPL-3", - 'website': 'https://odoo-community.org/', + 'website': 'https://github.com/OCA/event', 'category': 'Marketing', 'depends': ['event'], 'data': [ diff --git a/event_mail/i18n/es.po b/event_mail/i18n/es.po index 027fe85e4..cc009ec34 100644 --- a/event_mail/i18n/es.po +++ b/event_mail/i18n/es.po @@ -18,71 +18,149 @@ msgstr "" "X-Generator: Weblate 3.4\n" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_uid -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_uid +#: model_terms:ir.ui.view,arch_db:event_mail.res_config_settings_view_form +msgid "" +"Template Mail Scheduler\n" +" " +msgstr "" + +#. module: event_mail +#: selection:event.mail.scheduler.template,interval_type:0 +msgid "After each registration" +msgstr "" + +#. module: event_mail +#: selection:event.mail.scheduler.template,interval_type:0 +msgid "After the event" +msgstr "" + +#. module: event_mail +#: selection:event.mail.scheduler.template,interval_type:0 +msgid "Before the event" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_res_company +msgid "Companies" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_res_config_settings +#, fuzzy +msgid "Config Settings" +msgstr "event.config.settings" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__create_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__create_uid msgid "Created by" msgstr "Creado por" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_date -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__create_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__create_date msgid "Created on" msgstr "Creado el" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_display_name -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_display_name +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Day(s)" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__display_name +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__display_name msgid "Display Name" msgstr "Nombre a mostrar" #. module: event_mail -#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__sequence +#, fuzzy +msgid "Display order" +msgstr "Nombre a mostrar" + +#. module: event_mail +#: model_terms:ir.ui.view,arch_db:event_mail.view_event_mail_template_form msgid "Email Schedule" msgstr "Programación de Correo Electrónico" +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__template_id +#, fuzzy +msgid "Email Template" +msgstr "Plantilla de mail" + #. module: event_mail #: model:ir.model,name:event_mail.model_event_event -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_id +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__event_id msgid "Event" msgstr "Evento" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_mail_template_id -#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +#: model:ir.model,name:event_mail.model_event_type +msgid "Event Category" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__event_mail_template_id +#: model_terms:ir.ui.view,arch_db:event_mail.view_event_mail_template_form msgid "Event Mail Template" msgstr "Plantilla de emails" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_id -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_5067 +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Hour(s)" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__id +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__id msgid "ID" msgstr "ID" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template___last_update -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template___last_update +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Immediately" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__interval_nbr +msgid "Interval" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template____last_update +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template____last_update msgid "Last Modified on" msgstr "Última modificación en" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_uid -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__write_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__write_uid msgid "Last Updated by" msgstr "Última actualización por" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_date -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__write_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__write_date msgid "Last Updated on" msgstr "Última actualización el" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_scheduler_template_ids +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__mail_registration_ids +#, fuzzy +msgid "Mail Registration" +msgstr "Opciones de correo" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__scheduler_template_ids msgid "Mail Schedule" msgstr "Programación de correo" #. module: event_mail -#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +#: model_terms:ir.ui.view,arch_db:event_mail.view_event_mail_template_form msgid "Mail Scheduler" msgstr "Programador de Correo Electrónico" @@ -92,12 +170,18 @@ msgid "Mail Scheduler Template" msgstr "Plantilla de programación de correo" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_config_settings_event_mail_template_id +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__mail_sent +msgid "Mail Sent on Event" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_res_company__event_mail_template_id +#: model:ir.model.fields,field_description:event_mail.field_res_config_settings__event_mail_template_id msgid "Mail Template" msgstr "Plantilla de mail" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_event_event_mail_template_id +#: model:ir.model.fields,field_description:event_mail.field_event_event__event_mail_template_id msgid "Mail Template Scheduler" msgstr "Plantilla de programación de correo" @@ -107,31 +191,71 @@ msgid "Mail Templates" msgstr "Plantillas de correo" #. module: event_mail -#: model:ir.ui.view,arch_db:event_mail.view_event_configuration +#: model_terms:ir.ui.view,arch_db:event_mail.res_config_settings_view_form msgid "Mail options" msgstr "Opciones de correo" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_name +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Month(s)" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__name msgid "Name" msgstr "Nombre" #. module: event_mail -#: model:ir.ui.view,arch_db:event_mail.view_event_configuration +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__scheduled_date +msgid "Scheduled Sent Mail" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_mail_template +msgid "Scheduling templates for events" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__done +msgid "Sent" +msgstr "" + +#. module: event_mail +#: model_terms:ir.ui.view,arch_db:event_mail.res_config_settings_view_form +#, fuzzy +msgid "Template" +msgstr "Plantilla de mail" + +#. module: event_mail +#: model_terms:ir.ui.view,arch_db:event_mail.res_config_settings_view_form msgid "Template Mail Scheduler" msgstr "Plantilla de programación de correo" #. module: event_mail -#: model:ir.model,name:event_mail.model_event_config_settings -msgid "event.config.settings" -msgstr "event.config.settings" +#: model:ir.model.fields,help:event_mail.field_event_mail_scheduler_template__template_id +msgid "" +"This field contains the template of the mail that will be automatically sent" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__interval_type +msgid "Trigger " +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__interval_unit +msgid "Unit" +msgstr "" + +#. module: event_mail +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Week(s)" +msgstr "" #. module: event_mail #: model:ir.model,name:event_mail.model_event_mail_scheduler_template msgid "event.mail.scheduler.template" msgstr "event.mail.scheduler.template" -#. module: event_mail -#: model:ir.model,name:event_mail.model_event_mail_template -msgid "event.mail.template" -msgstr "event.mail.template" +#~ msgid "event.mail.template" +#~ msgstr "event.mail.template" diff --git a/event_mail/i18n/event_mail.pot b/event_mail/i18n/event_mail.pot index 374a053e5..8ddcc23f9 100644 --- a/event_mail/i18n/event_mail.pot +++ b/event_mail/i18n/event_mail.pot @@ -4,7 +4,7 @@ # msgid "" msgstr "" -"Project-Id-Version: Odoo Server 10.0\n" +"Project-Id-Version: Odoo Server 12.0\n" "Report-Msgid-Bugs-To: \n" "Last-Translator: <>\n" "Language-Team: \n" @@ -14,71 +14,142 @@ msgstr "" "Plural-Forms: \n" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_uid -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_uid +#: model_terms:ir.ui.view,arch_db:event_mail.res_config_settings_view_form +msgid "Template Mail Scheduler\n" +" " +msgstr "" + +#. module: event_mail +#: selection:event.mail.scheduler.template,interval_type:0 +msgid "After each registration" +msgstr "" + +#. module: event_mail +#: selection:event.mail.scheduler.template,interval_type:0 +msgid "After the event" +msgstr "" + +#. module: event_mail +#: selection:event.mail.scheduler.template,interval_type:0 +msgid "Before the event" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_res_company +msgid "Companies" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__create_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__create_uid msgid "Created by" msgstr "" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_date -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__create_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__create_date msgid "Created on" msgstr "" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_display_name -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_display_name +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Day(s)" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__display_name +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__display_name msgid "Display Name" msgstr "" #. module: event_mail -#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__sequence +msgid "Display order" +msgstr "" + +#. module: event_mail +#: model_terms:ir.ui.view,arch_db:event_mail.view_event_mail_template_form msgid "Email Schedule" msgstr "" +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__template_id +msgid "Email Template" +msgstr "" + #. module: event_mail #: model:ir.model,name:event_mail.model_event_event -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_id +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__event_id msgid "Event" msgstr "" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_mail_template_id -#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +#: model:ir.model,name:event_mail.model_event_type +msgid "Event Category" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__event_mail_template_id +#: model_terms:ir.ui.view,arch_db:event_mail.view_event_mail_template_form msgid "Event Mail Template" msgstr "" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_id -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_5067 +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Hour(s)" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__id +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__id msgid "ID" msgstr "" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template___last_update -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template___last_update +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Immediately" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__interval_nbr +msgid "Interval" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template____last_update +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template____last_update msgid "Last Modified on" msgstr "" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_uid -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__write_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__write_uid msgid "Last Updated by" msgstr "" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_date -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__write_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__write_date msgid "Last Updated on" msgstr "" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_scheduler_template_ids +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__mail_registration_ids +msgid "Mail Registration" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__scheduler_template_ids msgid "Mail Schedule" msgstr "" #. module: event_mail -#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +#: model_terms:ir.ui.view,arch_db:event_mail.view_event_mail_template_form msgid "Mail Scheduler" msgstr "" @@ -88,12 +159,18 @@ msgid "Mail Scheduler Template" msgstr "" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_config_settings_event_mail_template_id +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__mail_sent +msgid "Mail Sent on Event" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_res_company__event_mail_template_id +#: model:ir.model.fields,field_description:event_mail.field_res_config_settings__event_mail_template_id msgid "Mail Template" msgstr "" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_event_event_mail_template_id +#: model:ir.model.fields,field_description:event_mail.field_event_event__event_mail_template_id msgid "Mail Template Scheduler" msgstr "" @@ -103,32 +180,67 @@ msgid "Mail Templates" msgstr "" #. module: event_mail -#: model:ir.ui.view,arch_db:event_mail.view_event_configuration +#: model_terms:ir.ui.view,arch_db:event_mail.res_config_settings_view_form msgid "Mail options" msgstr "" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_name +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Month(s)" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__name msgid "Name" msgstr "" #. module: event_mail -#: model:ir.ui.view,arch_db:event_mail.view_event_configuration +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__scheduled_date +msgid "Scheduled Sent Mail" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_mail_template +msgid "Scheduling templates for events" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__done +msgid "Sent" +msgstr "" + +#. module: event_mail +#: model_terms:ir.ui.view,arch_db:event_mail.res_config_settings_view_form +msgid "Template" +msgstr "" + +#. module: event_mail +#: model_terms:ir.ui.view,arch_db:event_mail.res_config_settings_view_form msgid "Template Mail Scheduler" msgstr "" #. module: event_mail -#: model:ir.model,name:event_mail.model_event_config_settings -msgid "event.config.settings" +#: model:ir.model.fields,help:event_mail.field_event_mail_scheduler_template__template_id +msgid "This field contains the template of the mail that will be automatically sent" msgstr "" #. module: event_mail -#: model:ir.model,name:event_mail.model_event_mail_scheduler_template -msgid "event.mail.scheduler.template" +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__interval_type +msgid "Trigger " msgstr "" #. module: event_mail -#: model:ir.model,name:event_mail.model_event_mail_template -msgid "event.mail.template" +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__interval_unit +msgid "Unit" +msgstr "" + +#. module: event_mail +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Week(s)" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_mail_scheduler_template +msgid "event.mail.scheduler.template" msgstr "" diff --git a/event_mail/i18n/fr.po b/event_mail/i18n/fr.po index a5b1f5ca3..97896f0fa 100644 --- a/event_mail/i18n/fr.po +++ b/event_mail/i18n/fr.po @@ -17,71 +17,149 @@ msgstr "" "X-Generator: Weblate 3.2.2\n" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_uid -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_uid +#: model_terms:ir.ui.view,arch_db:event_mail.res_config_settings_view_form +msgid "" +"Template Mail Scheduler\n" +" " +msgstr "" + +#. module: event_mail +#: selection:event.mail.scheduler.template,interval_type:0 +msgid "After each registration" +msgstr "" + +#. module: event_mail +#: selection:event.mail.scheduler.template,interval_type:0 +msgid "After the event" +msgstr "" + +#. module: event_mail +#: selection:event.mail.scheduler.template,interval_type:0 +msgid "Before the event" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_res_company +msgid "Companies" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_res_config_settings +#, fuzzy +msgid "Config Settings" +msgstr "event.config.settings" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__create_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__create_uid msgid "Created by" msgstr "Créé par" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_create_date -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_create_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__create_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__create_date msgid "Created on" msgstr "Créé le" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_display_name -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_display_name +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Day(s)" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__display_name +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__display_name msgid "Display Name" msgstr "Nom affiché" #. module: event_mail -#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__sequence +#, fuzzy +msgid "Display order" +msgstr "Nom affiché" + +#. module: event_mail +#: model_terms:ir.ui.view,arch_db:event_mail.view_event_mail_template_form msgid "Email Schedule" msgstr "Planification email" +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__template_id +#, fuzzy +msgid "Email Template" +msgstr "Modèle d'email" + #. module: event_mail #: model:ir.model,name:event_mail.model_event_event -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_id +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__event_id msgid "Event" msgstr "Événement" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_event_mail_template_id -#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +#: model:ir.model,name:event_mail.model_event_type +msgid "Event Category" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__event_mail_template_id +#: model_terms:ir.ui.view,arch_db:event_mail.view_event_mail_template_form msgid "Event Mail Template" msgstr "Modèle mail événement" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_id -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_id_5067 +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Hour(s)" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__id +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__id msgid "ID" msgstr "ID" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template___last_update -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template___last_update +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Immediately" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__interval_nbr +msgid "Interval" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template____last_update +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template____last_update msgid "Last Modified on" msgstr "Dernière modification le" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_uid -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__write_uid +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__write_uid msgid "Last Updated by" msgstr "Dernière modification par" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template_write_date -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_write_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__write_date +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__write_date msgid "Last Updated on" msgstr "Dernière modification le" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_scheduler_template_ids +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__mail_registration_ids +#, fuzzy +msgid "Mail Registration" +msgstr "Options e-mail" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__scheduler_template_ids msgid "Mail Schedule" msgstr "Planification email" #. module: event_mail -#: model:ir.ui.view,arch_db:event_mail.view_event_mail_template_form +#: model_terms:ir.ui.view,arch_db:event_mail.view_event_mail_template_form msgid "Mail Scheduler" msgstr "Planificateur email" @@ -91,12 +169,18 @@ msgid "Mail Scheduler Template" msgstr "Modèle planificateur email" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_config_settings_event_mail_template_id +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__mail_sent +msgid "Mail Sent on Event" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_res_company__event_mail_template_id +#: model:ir.model.fields,field_description:event_mail.field_res_config_settings__event_mail_template_id msgid "Mail Template" msgstr "Modèle d'email" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_event_event_mail_template_id +#: model:ir.model.fields,field_description:event_mail.field_event_event__event_mail_template_id msgid "Mail Template Scheduler" msgstr "Modèle de planificateur mail" @@ -106,31 +190,71 @@ msgid "Mail Templates" msgstr "Modèles d'e-mail" #. module: event_mail -#: model:ir.ui.view,arch_db:event_mail.view_event_configuration +#: model_terms:ir.ui.view,arch_db:event_mail.res_config_settings_view_form msgid "Mail options" msgstr "Options e-mail" #. module: event_mail -#: model:ir.model.fields,field_description:event_mail.field_event_mail_template_name +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Month(s)" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_template__name msgid "Name" msgstr "Nom" #. module: event_mail -#: model:ir.ui.view,arch_db:event_mail.view_event_configuration +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__scheduled_date +msgid "Scheduled Sent Mail" +msgstr "" + +#. module: event_mail +#: model:ir.model,name:event_mail.model_event_mail_template +msgid "Scheduling templates for events" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__done +msgid "Sent" +msgstr "" + +#. module: event_mail +#: model_terms:ir.ui.view,arch_db:event_mail.res_config_settings_view_form +#, fuzzy +msgid "Template" +msgstr "Modèle d'email" + +#. module: event_mail +#: model_terms:ir.ui.view,arch_db:event_mail.res_config_settings_view_form msgid "Template Mail Scheduler" msgstr "Modèle de planificateur email" #. module: event_mail -#: model:ir.model,name:event_mail.model_event_config_settings -msgid "event.config.settings" -msgstr "event.config.settings" +#: model:ir.model.fields,help:event_mail.field_event_mail_scheduler_template__template_id +msgid "" +"This field contains the template of the mail that will be automatically sent" +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__interval_type +msgid "Trigger " +msgstr "" + +#. module: event_mail +#: model:ir.model.fields,field_description:event_mail.field_event_mail_scheduler_template__interval_unit +msgid "Unit" +msgstr "" + +#. module: event_mail +#: selection:event.mail.scheduler.template,interval_unit:0 +msgid "Week(s)" +msgstr "" #. module: event_mail #: model:ir.model,name:event_mail.model_event_mail_scheduler_template msgid "event.mail.scheduler.template" msgstr "event.mail.scheduler.template" -#. module: event_mail -#: model:ir.model,name:event_mail.model_event_mail_template -msgid "event.mail.template" -msgstr "event.mail.template" +#~ msgid "event.mail.template" +#~ msgstr "event.mail.template" diff --git a/event_mail/models/__init__.py b/event_mail/models/__init__.py index c512a46d9..484b75ae2 100644 --- a/event_mail/models/__init__.py +++ b/event_mail/models/__init__.py @@ -1,6 +1,10 @@ -# -*- coding: utf-8 -*- # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - -from . import res_config +from . import res_company +# WARNING: Order of imports matters on this module, so don't put res_company +# below the other modules since it will lead to a missing column error when +# the module is initialized for the first time since there are fields with +# default values wich refer to this new res.company field. from . import event from . import event_mail +from . import event_type +from . import res_config_settings diff --git a/event_mail/models/event.py b/event_mail/models/event.py index 0605c0241..ad3864cec 100644 --- a/event_mail/models/event.py +++ b/event_mail/models/event.py @@ -1,7 +1,5 @@ -# -*- coding: utf-8 -*- -# Copyright 2017 Sergio Teruel +# Copyright 2017 Tecnativa - Sergio Teruel # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - from odoo import api, fields, models @@ -10,8 +8,8 @@ class EventEvent(models.Model): @api.model def _default_event_mail_template_id(self): - return self.env['ir.values'].get_default( - 'event.config.settings', 'event_mail_template_id') + company = self.env['res.company']._company_default_get('event.event') + return company.event_mail_template_id event_mail_template_id = fields.Many2one( comodel_name='event.mail.template', @@ -33,14 +31,9 @@ def _onchange_event_mail_template_id(self): })) self.event_mail_ids = vals - @api.model - def _default_event_mail_ids(self): - if self.env.context.get('by_pass_config_template', False): - return super(EventEvent, self)._default_event_mail_ids() - - event_mail_template_id = self.env['ir.values'].get_default( - 'event.config.settings', 'event_mail_template_id') - if event_mail_template_id: - return super(EventEvent, self)._default_event_mail_ids() - else: - return [] + @api.onchange('event_type_id') + def _onchange_type(self): + """If a template is already set, we'll override the event.type + schedulers""" + if not self.event_mail_template_id: + return super()._onchange_type() diff --git a/event_mail/models/event_mail.py b/event_mail/models/event_mail.py index c730656a5..1b2e639e1 100644 --- a/event_mail/models/event_mail.py +++ b/event_mail/models/event_mail.py @@ -1,7 +1,5 @@ -# -*- coding: utf-8 -*- -# Copyright 2017 Sergio Teruel +# Copyright 2017 Tecnativa - Sergio Teruel # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - from odoo import api, fields, models @@ -20,11 +18,12 @@ class EventMailSchedulerTemplate(models.Model): class EventMailTemplate(models.Model): _name = 'event.mail.template' + _description = 'Scheduling templates for events' @api.model def _default_scheduler_template_ids(self): - return self.env['event.event'].with_context( - by_pass_config_template=True)._default_event_mail_ids() + return self.env['event.type'].with_context( + by_pass_config_template=True)._get_default_event_type_mail_ids() name = fields.Char() scheduler_template_ids = fields.One2many( diff --git a/event_mail/models/event_type.py b/event_mail/models/event_type.py new file mode 100644 index 000000000..1d0191530 --- /dev/null +++ b/event_mail/models/event_type.py @@ -0,0 +1,23 @@ +# Copyright 2019 Tecnativa - David Vidal +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +from odoo import api, models + + +class EventType(models.Model): + _inherit = 'event.type' + + @api.model + def _get_default_event_type_mail_ids(self): + if self.env.context.get('by_pass_config_template', False): + return super()._get_default_event_type_mail_ids() + company = self.env['res.company']._company_default_get('event.event') + event_mail_template_id = company.event_mail_template_id + if event_mail_template_id: + return [{ + 'template_id': line.template_id, + 'interval_nbr': line.interval_nbr, + 'interval_unit': line.interval_unit, + 'interval_type': line.interval_type} + for line in event_mail_template_id.scheduler_template_ids] + else: + return [] diff --git a/event_mail/models/res_company.py b/event_mail/models/res_company.py new file mode 100644 index 000000000..ac8a5792b --- /dev/null +++ b/event_mail/models/res_company.py @@ -0,0 +1,12 @@ +# Copyright 2019 Tecnativa - David Vidal +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). +from odoo import fields, models + + +class ResCompany(models.Model): + _inherit = 'res.company' + + event_mail_template_id = fields.Many2one( + comodel_name='event.mail.template', + string='Mail Template', + ) diff --git a/event_mail/models/res_config.py b/event_mail/models/res_config.py deleted file mode 100644 index 0252cc86a..000000000 --- a/event_mail/models/res_config.py +++ /dev/null @@ -1,20 +0,0 @@ -# -*- coding: utf-8 -*- -# © 2016 Sergio Teruel -# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). - -from odoo import api, fields, models - - -class EventMailConfigSettings(models.TransientModel): - _inherit = 'event.config.settings' - - event_mail_template_id = fields.Many2one( - comodel_name='event.mail.template', - string='Mail Template', - ) - - @api.multi - def set_default_event_mail_template_id(self): - self.env['ir.values'].set_default( - 'event.config.settings', 'event_mail_template_id', - self.event_mail_template_id.id) diff --git a/event_mail/models/res_config_settings.py b/event_mail/models/res_config_settings.py new file mode 100644 index 000000000..0d6dbc32d --- /dev/null +++ b/event_mail/models/res_config_settings.py @@ -0,0 +1,15 @@ +# Copyright 2016 Tecnativa - Sergio Teruel +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). + +from odoo import fields, models + + +class ResConfigSettings(models.TransientModel): + _inherit = 'res.config.settings' + + event_mail_template_id = fields.Many2one( + related='company_id.event_mail_template_id', + comodel_name='event.mail.template', + string='Mail Template', + readonly=False, + ) diff --git a/event_mail/readme/CONTRIBUTORS.rst b/event_mail/readme/CONTRIBUTORS.rst new file mode 100644 index 000000000..20fa0a2b8 --- /dev/null +++ b/event_mail/readme/CONTRIBUTORS.rst @@ -0,0 +1,4 @@ +* `Tecnativa `__: + + * Sergio Teruel + * David Vidal diff --git a/event_mail/readme/DESCRIPTION.rst b/event_mail/readme/DESCRIPTION.rst new file mode 100644 index 000000000..17412837c --- /dev/null +++ b/event_mail/readme/DESCRIPTION.rst @@ -0,0 +1,4 @@ +This module allows to define mail settings for events. By default the emails +scheduler has been deactivated. +You can create mail scheduler templates for events and select one by default +in event settings. diff --git a/event_mail/readme/USAGE.rst b/event_mail/readme/USAGE.rst new file mode 100644 index 000000000..735b3429c --- /dev/null +++ b/event_mail/readme/USAGE.rst @@ -0,0 +1,9 @@ +To use this module, you need to: + +#. Go to *Events > Configuration > Mail Templates* and create all templates + that you need. +#. Go to *Events > Settings* and select the default template in + "Template Mail Scheduler" field. +#. Go to *Events > Events* and create one. All mails schedulers has been + created. Also you can select other template in "Mail Template Scheduler" + field on "Email Schedule" tab. diff --git a/event_mail/static/description/index.html b/event_mail/static/description/index.html new file mode 100644 index 000000000..b5d4f5b4c --- /dev/null +++ b/event_mail/static/description/index.html @@ -0,0 +1,443 @@ + + + + + + +Event Mail + + + +
+

Event Mail

+ + +

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

+

This module allows to define mail settings for events. By default the emails +scheduler has been deactivated. +You can create mail scheduler templates for events and select one by default +in event settings.

+

Table of contents

+ +
+

Usage

+

To use this module, you need to:

+
    +
  1. Go to Events > Configuration > Mail Templates and create all templates +that you need.
  2. +
  3. Go to Events > Settings and select the default template in +“Template Mail Scheduler” field.
  4. +
  5. Go to Events > Events and create one. All mails schedulers has been +created. Also you can select other template in “Mail Template Scheduler” +field on “Email Schedule” tab.
  6. +
+
+
+

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

+
    +
  • Tecnativa
  • +
+
+
+

Contributors

+
    +
  • Tecnativa:

    +
    +
      +
    • Sergio Teruel
    • +
    • David Vidal
    • +
    +
    +
  • +
+
+
+

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

+

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

+
+
+
+ + diff --git a/event_mail/tests/__init__.py b/event_mail/tests/__init__.py index 3b67ec3f8..b0057e6bc 100644 --- a/event_mail/tests/__init__.py +++ b/event_mail/tests/__init__.py @@ -1,3 +1 @@ -# -*- coding: utf-8 -*- - from . import test_event_mail diff --git a/event_mail/tests/test_event_mail.py b/event_mail/tests/test_event_mail.py index 96bcc28a0..415adb54f 100644 --- a/event_mail/tests/test_event_mail.py +++ b/event_mail/tests/test_event_mail.py @@ -1,7 +1,5 @@ -# -*- coding: utf-8 -*- -# Copyright 2017 Sergio Teruel +# Copyright 2017 Tecnativa - Sergio Teruel # License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl). - from odoo.tests.common import SavepointCase @@ -25,13 +23,11 @@ def setUpClass(self): def test_event_template_config(self): # Store default template in event settings - event_config = self.env['event.config.settings'].sudo().create({ + event_config = self.env['res.config.settings'].sudo().create({ 'event_mail_template_id': self.template1.id, - 'auto_confirmation': 1, }) event_config.execute() - config_template_id = self.env['ir.values'].get_default( - 'event.config.settings', 'event_mail_template_id') + config_template_id = self.env.user.company_id.event_mail_template_id self.assertTrue( config_template_id, 'Event Mail: Template store in default values') @@ -59,13 +55,11 @@ def test_event_template_config(self): def test_event_template_no_config(self): # Store default template in event settings - event_config = self.env['event.config.settings'].sudo().create({ + event_config = self.env['res.config.settings'].sudo().create({ 'event_mail_template_id': False, - 'auto_confirmation': 1, }) event_config.execute() - config_template_id = self.env['ir.values'].get_default( - 'event.config.settings', 'event_mail_template_id') + config_template_id = self.env.user.company_id.event_mail_template_id self.assertFalse( self.env['event.mail.template'].browse( config_template_id).exists(), diff --git a/event_mail/views/event_mail_view.xml b/event_mail/views/event_mail_view.xml index 1cfce427c..76d786bfd 100644 --- a/event_mail/views/event_mail_view.xml +++ b/event_mail/views/event_mail_view.xml @@ -1,5 +1,5 @@ - diff --git a/event_mail/views/event_view.xml b/event_mail/views/event_view.xml index 6c33ab4be..b322e48bf 100644 --- a/event_mail/views/event_view.xml +++ b/event_mail/views/event_view.xml @@ -1,5 +1,5 @@ - @@ -7,7 +7,7 @@ event.event - + diff --git a/event_mail/views/res_config_view.xml b/event_mail/views/res_config_view.xml index 67a53c7df..3210d0097 100644 --- a/event_mail/views/res_config_view.xml +++ b/event_mail/views/res_config_view.xml @@ -1,20 +1,32 @@ - - - event.config.settings - + + res.config.settings + - - -