From eebeefcf8bd65bdfc020667352d842b919b1a50a Mon Sep 17 00:00:00 2001 From: ryv-odoo Date: Mon, 30 Sep 2019 09:14:45 +0000 Subject: [PATCH] [IMP] mass_mailing(_sms) : revamp/fix mail marketing views - Revamp the kanban view of the mass mailing (and mass SMS) model to be more concise and readable. Also fix the issue of no border progress bar in community version (same view). - In the kanban view of mail marketing, when mailing list model is targerted, the count of record was not correct. Create a display condition if mailing list is used to fix the issue. TASK_ID : 2075733 --- addons/mass_mailing/models/mailing.py | 6 -- addons/mass_mailing/models/mailing_contact.py | 2 +- .../views/mailing_mailing_views.xml | 66 ++++++++++--------- .../views/mailing_mailing_views.xml | 4 +- 4 files changed, 37 insertions(+), 41 deletions(-) diff --git a/addons/mass_mailing/models/mailing.py b/addons/mass_mailing/models/mailing.py index d84237d1e9e..1da973c73dc 100644 --- a/addons/mass_mailing/models/mailing.py +++ b/addons/mass_mailing/models/mailing.py @@ -104,7 +104,6 @@ class MassMailing(models.Model): help="Use a specific mail server in priority. Otherwise Odoo relies on the first outgoing mail server available (based on their sequencing) as it does for normal mails.") contact_list_ids = fields.Many2many('mailing.list', 'mail_mass_mailing_list_rel', string='Mailing Lists') - contact_list_count = fields.Integer('# Contact List', compute='_compute_contact_list_count') contact_ab_pc = fields.Integer(string='A/B Testing percentage', help='Percentage of the contacts that will be mailed. Recipients will be taken randomly.', default=100) unique_ab_testing = fields.Boolean(string='Allow A/B Testing', default=False, @@ -130,11 +129,6 @@ class MassMailing(models.Model): bounced_ratio = fields.Integer(compute="_compute_statistics", string='Bounced Ratio') next_departure = fields.Datetime(compute="_compute_next_departure", string='Scheduled date') - @api.depends('contact_list_ids') - def _compute_contact_list_count(self): - for mass_mailing in self: - mass_mailing.contact_list_count = len(mass_mailing.contact_list_ids) - def _compute_total(self): for mass_mailing in self: mass_mailing.total = len(mass_mailing.sudo()._get_recipients()) diff --git a/addons/mass_mailing/models/mailing_contact.py b/addons/mass_mailing/models/mailing_contact.py index ea25ce31936..95627f4260e 100644 --- a/addons/mass_mailing/models/mailing_contact.py +++ b/addons/mass_mailing/models/mailing_contact.py @@ -46,7 +46,7 @@ class MassMailingContact(models.Model): base.""" _name = 'mailing.contact' _inherit = ['mail.thread.blacklist'] - _description = 'Mass Mailing Contact' + _description = 'Mailing Contact' _order = 'email' name = fields.Char() diff --git a/addons/mass_mailing/views/mailing_mailing_views.xml b/addons/mass_mailing/views/mailing_mailing_views.xml index d06c64db04f..20aa910d783 100644 --- a/addons/mass_mailing/views/mailing_mailing_views.xml +++ b/addons/mass_mailing/views/mailing_mailing_views.xml @@ -262,7 +262,6 @@ - @@ -286,7 +285,19 @@
-

+
+

+ +

+
+
+
+
+

@@ -298,44 +309,35 @@

- -
-
- Opened +
+ / Delivered to + + Mailing Contact
-
- % +
+
+ % Opened
+
+ % Replied
-
-
- Replied -
-
- % -
+
+ % Clicks
-
-
- Clicks -
-
- % -
-
-
- -
-
-
- -
-
+
+ + + + + - Contacts + + Mailing Contact + +
diff --git a/addons/mass_mailing_sms/views/mailing_mailing_views.xml b/addons/mass_mailing_sms/views/mailing_mailing_views.xml index b0fb2c129b9..dedfd377b0b 100644 --- a/addons/mass_mailing_sms/views/mailing_mailing_views.xml +++ b/addons/mass_mailing_sms/views/mailing_mailing_views.xml @@ -159,8 +159,8 @@ {'invisible': [('mailing_type', '!=', 'mail')]} - -