mirror of https://github.com/OCA/social.git
[FIX] mass_mailing_partner: get contextual list when importing contacts
When importing contacts from csv or xls, the list is set by context. So we must try to default to that context when setting the contact values.pull/579/head
parent
6505f364f0
commit
ed77b7944c
|
@ -38,18 +38,25 @@ class MailMassMailingContact(models.Model):
|
|||
if category_ids:
|
||||
self.tag_ids = category_ids
|
||||
|
||||
@api.model
|
||||
def create(self, vals):
|
||||
record = self.new(vals)
|
||||
if not record.partner_id:
|
||||
record._set_partner()
|
||||
record._onchange_partner_mass_mailing_partner()
|
||||
new_vals = record._convert_to_write(record._cache)
|
||||
new_vals.update(
|
||||
subscription_list_ids=vals.get('subscription_list_ids', False),
|
||||
list_ids=vals.get('list_ids', False)
|
||||
)
|
||||
return super(MailMassMailingContact, self).create(new_vals)
|
||||
@api.model_create_multi
|
||||
def create(self, vals_list):
|
||||
new_vals_list = []
|
||||
for vals in vals_list:
|
||||
# Ensure that defaults are loaded (e.g.: import csv or xls)
|
||||
values_w_defaults = self.default_get(self._fields.keys())
|
||||
values_w_defaults.update(vals)
|
||||
record = self.new(values_w_defaults)
|
||||
if not record.partner_id:
|
||||
record._set_partner()
|
||||
record._onchange_partner_mass_mailing_partner()
|
||||
new_vals = record._convert_to_write(record._cache)
|
||||
new_vals.update(
|
||||
subscription_list_ids=values_w_defaults.get(
|
||||
'subscription_list_ids', False),
|
||||
list_ids=values_w_defaults.get('list_ids', False)
|
||||
)
|
||||
new_vals_list.append(new_vals)
|
||||
return super().create(new_vals_list)
|
||||
|
||||
def write(self, vals):
|
||||
for contact in self:
|
||||
|
@ -63,7 +70,7 @@ class MailMassMailingContact(models.Model):
|
|||
subscription_list_ids=vals.get('subscription_list_ids', False),
|
||||
list_ids=vals.get('list_ids', False)
|
||||
)
|
||||
super(MailMassMailingContact, contact).write(new_vals)
|
||||
super().write(new_vals)
|
||||
return True
|
||||
|
||||
def _get_company(self):
|
||||
|
|
Loading…
Reference in New Issue