diff --git a/addons/mass_mailing/__manifest__.py b/addons/mass_mailing/__manifest__.py
index 5dd136c88a4..36abfb83f75 100644
--- a/addons/mass_mailing/__manifest__.py
+++ b/addons/mass_mailing/__manifest__.py
@@ -4,7 +4,7 @@
{
'name': 'Email Marketing',
'summary': 'Design, send and track emails',
- 'version': '2.5',
+ 'version': '2.6',
'sequence': 60,
'website': 'https://www.odoo.com/app/email-marketing',
'category': 'Marketing/Email Marketing',
diff --git a/addons/mass_mailing/models/mailing.py b/addons/mass_mailing/models/mailing.py
index d95f295c1b3..00ccf892457 100644
--- a/addons/mass_mailing/models/mailing.py
+++ b/addons/mass_mailing/models/mailing.py
@@ -53,7 +53,7 @@ class MassMailing(models.Model):
})
if 'contact_list_ids' in fields_list and not vals.get('contact_list_ids') and vals.get('mailing_model_id'):
- if vals.get('mailing_model_id') == self.env['ir.model']._get('mailing.list').id:
+ if vals.get('mailing_model_id') == self.env['ir.model']._get_id('mailing.list'):
mailing_list = self.env['mailing.list'].search([], limit=2)
if len(mailing_list) == 1:
vals['contact_list_ids'] = [(6, 0, [mailing_list.id])]
@@ -154,6 +154,9 @@ class MassMailing(models.Model):
mailing_model_name = fields.Char(
string='Recipients Model Name',
related='mailing_model_id.model', readonly=True, related_sudo=True)
+ mailing_on_mailing_list = fields.Boolean(
+ string='Based on Mailing Lists',
+ compute='_compute_mailing_on_mailing_list')
mailing_domain = fields.Char(
string='Domain',
compute='_compute_mailing_domain', readonly=False, store=True)
@@ -383,6 +386,12 @@ class MassMailing(models.Model):
for mailing in self:
mailing.mailing_model_real = 'mailing.contact' if mailing.mailing_model_id.model == 'mailing.list' else mailing.mailing_model_id.model
+ @api.depends('mailing_model_id')
+ def _compute_mailing_on_mailing_list(self):
+ mailing_list_model_id = self.env['ir.model']._get('mailing.list')
+ self.mailing_on_mailing_list = False
+ self.filtered(lambda m: m.mailing_model_id == mailing_list_model_id).mailing_on_mailing_list = True
+
@api.depends('mailing_model_id', 'contact_list_ids', 'mailing_type', 'mailing_filter_id')
def _compute_mailing_domain(self):
for mailing in self:
diff --git a/addons/mass_mailing/views/mailing_mailing_views.xml b/addons/mass_mailing/views/mailing_mailing_views.xml
index a1af5512eee..1a43b40e0a7 100644
--- a/addons/mass_mailing/views/mailing_mailing_views.xml
+++ b/addons/mass_mailing/views/mailing_mailing_views.xml
@@ -194,14 +194,14 @@