diff --git a/addons/mass_mailing/models/mass_mailing.py b/addons/mass_mailing/models/mass_mailing.py
index 84151916a79..e54092edc8c 100644
--- a/addons/mass_mailing/models/mass_mailing.py
+++ b/addons/mass_mailing/models/mass_mailing.py
@@ -169,7 +169,7 @@ class MassMailingCampaign(osv.Model):
"""Model of mass mailing campaigns. """
_name = "mail.mass_mailing.campaign"
_description = 'Mass Mailing Campaign'
-
+ _rec_name = "campaign_id"
_inherit = ['utm.mixin']
_inherits = {'utm.campaign': 'campaign_id'}
@@ -229,7 +229,6 @@ class MassMailingCampaign(osv.Model):
return result
_columns = {
- 'name': fields.char('Name', required=True),
'stage_id': fields.many2one('mail.mass_mailing.stage', 'Stage', required=True),
'user_id': fields.many2one(
'res.users', 'Responsible',
@@ -341,17 +340,6 @@ class MassMailingCampaign(osv.Model):
res[cid] = set(stat.res_id for stat in Statistics.browse(cr, uid, stat_ids, context=context))
return res
- def on_change_campaign_name(self, cr, uid, ids, name, context=None):
- if name:
- mass_mailing_campaign = self.browse(cr, uid, ids, context=context)
- if mass_mailing_campaign.campaign_id:
- utm_campaign_id = mass_mailing_campaign.campaign_id.id
- self.pool['utm.campaign'].write(cr, uid, [utm_campaign_id], {'name': name}, context=context)
- else:
- utm_campaign_id = self.pool['utm.campaign'].create(cr, uid, {'name': name}, context=context)
-
- return {'value': {'campaign_id': utm_campaign_id}}
-
def read_group(self, cr, uid, domain, fields, groupby, offset=0, limit=None, context=None, orderby=False, lazy=True):
""" Override read_group to always display all states. """
if groupby and groupby[0] == "stage_id":
diff --git a/addons/mass_mailing/models/mass_mailing_report.py b/addons/mass_mailing/models/mass_mailing_report.py
index 9d91be2759f..6c259913de6 100644
--- a/addons/mass_mailing/models/mass_mailing_report.py
+++ b/addons/mass_mailing/models/mass_mailing_report.py
@@ -36,7 +36,7 @@ class MassMailingReport(osv.Model):
min(ms.id) as id,
ms.scheduled as scheduled_date,
mm.name as name,
- mc.name as campaign,
+ utm.name as campaign,
count(ms.bounced) as bounced,
count(ms.sent) as sent,
(count(ms.sent) - count(ms.bounced)) as delivered,
@@ -48,5 +48,6 @@ class MassMailingReport(osv.Model):
mail_mail_statistics as ms
left join mail_mass_mailing as mm ON (ms.mass_mailing_id=mm.id)
left join mail_mass_mailing_campaign as mc ON (ms.mass_mailing_campaign_id=mc.id)
- GROUP BY ms.scheduled, mm.name, mc.name, mm.state, mm.email_from
+ left join utm_campaign as utm ON (mc.campaign_id = utm.id)
+ GROUP BY ms.scheduled, mm.name, utm.name, mm.state, mm.email_from
)""")
diff --git a/addons/mass_mailing/views/mass_mailing.xml b/addons/mass_mailing/views/mass_mailing.xml
index 4cbfab36e71..43bf53b2e76 100644
--- a/addons/mass_mailing/views/mass_mailing.xml
+++ b/addons/mass_mailing/views/mass_mailing.xml
@@ -784,14 +784,13 @@
-
+
-