From f93c4f4262e0a7102e34c6ed8f2b8f51eef45062 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Wed, 12 Apr 2017 10:25:41 +0200 Subject: [PATCH] [ADD] mass_mailing_event_track: add mass mailing UX on event for track speakers If the event has some tracks a button is displayed to launch a mass mailing on those speakers. This button requires a new bridge module between mass mailing and website_event_track. --- addons/mass_mailing_event_track/__init__.py | 4 ++++ .../mass_mailing_event_track/__manifest__.py | 20 ++++++++++++++++ .../models/__init__.py | 4 ++++ .../mass_mailing_event_track/models/event.py | 23 +++++++++++++++++++ .../views/event_views.xml | 19 +++++++++++++++ 5 files changed, 70 insertions(+) create mode 100644 addons/mass_mailing_event_track/__init__.py create mode 100644 addons/mass_mailing_event_track/__manifest__.py create mode 100644 addons/mass_mailing_event_track/models/__init__.py create mode 100644 addons/mass_mailing_event_track/models/event.py create mode 100644 addons/mass_mailing_event_track/views/event_views.xml diff --git a/addons/mass_mailing_event_track/__init__.py b/addons/mass_mailing_event_track/__init__.py new file mode 100644 index 00000000000..81fc81d29c9 --- /dev/null +++ b/addons/mass_mailing_event_track/__init__.py @@ -0,0 +1,4 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +import models diff --git a/addons/mass_mailing_event_track/__manifest__.py b/addons/mass_mailing_event_track/__manifest__.py new file mode 100644 index 00000000000..f923e9b0524 --- /dev/null +++ b/addons/mass_mailing_event_track/__manifest__.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +{ + 'name': 'Mass mailing on track speakers', + 'category': 'Hidden', + 'version': '1.0', + 'description': + """ +Mass mail event track speakers +============================== + +Bridge module adding UX requirements to ease mass mailing of event track speakers. + """, + 'depends': ['website_event_track', 'mass_mailing'], + 'data': [ + 'views/event_views.xml' + ], + 'auto_install': True, +} diff --git a/addons/mass_mailing_event_track/models/__init__.py b/addons/mass_mailing_event_track/models/__init__.py new file mode 100644 index 00000000000..770d2eb5797 --- /dev/null +++ b/addons/mass_mailing_event_track/models/__init__.py @@ -0,0 +1,4 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +import event diff --git a/addons/mass_mailing_event_track/models/event.py b/addons/mass_mailing_event_track/models/event.py new file mode 100644 index 00000000000..4231917ee96 --- /dev/null +++ b/addons/mass_mailing_event_track/models/event.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +# Part of Odoo. See LICENSE file for full copyright and licensing details. + +from odoo import models + + +class Event(models.Model): + _inherit = "event.event" + + def action_mass_mailing_track_speakers(self): + mass_mailing_action = dict( + name='Mass Mail Attendees', + type='ir.actions.act_window', + res_model='mail.mass_mailing', + view_type='form', + view_mode='form', + target='current', + context=dict( + default_mailing_model='event.track', + default_mailing_domain="[('event_id', 'in', %s), ('stage_id.is_cancel', '!=', True)]" % self.ids, + ), + ) + return mass_mailing_action diff --git a/addons/mass_mailing_event_track/views/event_views.xml b/addons/mass_mailing_event_track/views/event_views.xml new file mode 100644 index 00000000000..cf057244f95 --- /dev/null +++ b/addons/mass_mailing_event_track/views/event_views.xml @@ -0,0 +1,19 @@ + + + + event.event.view.form.inherit.mass.mailing.track + event.event + + + + + + +