mirror of
https://github.com/bringout/oca-ocb-mail.git
synced 2026-04-21 11:22:06 +02:00
19.0 vanilla
This commit is contained in:
parent
5df8c07b59
commit
daa394e8b0
2114 changed files with 564841 additions and 299642 deletions
|
|
@ -1,7 +1,7 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||||
|
||||
from odoo import fields, models, tools, _
|
||||
from odoo import fields, models, tools, Command, _
|
||||
from odoo.tools.misc import clean_context
|
||||
|
||||
|
||||
|
|
@ -15,7 +15,7 @@ class MailingContactImport(models.TransientModel):
|
|||
def action_import(self):
|
||||
"""Import each lines of "contact_list" as a new contact."""
|
||||
self.ensure_one()
|
||||
contacts = tools.email_split_tuples(', '.join((self.contact_list or '').splitlines()))
|
||||
contacts = tools.mail.email_split_tuples(', '.join((self.contact_list or '').splitlines()))
|
||||
if not contacts:
|
||||
return {
|
||||
'type': 'ir.actions.client',
|
||||
|
|
@ -63,7 +63,10 @@ class MailingContactImport(models.TransientModel):
|
|||
if email not in existing_contacts:
|
||||
unique_contacts[email] = {
|
||||
'name': name,
|
||||
'list_ids': self.mailing_list_ids.ids,
|
||||
'subscription_ids': [
|
||||
Command.create({'list_id': mailing_list_id.id})
|
||||
for mailing_list_id in self.mailing_list_ids
|
||||
],
|
||||
}
|
||||
|
||||
if not unique_contacts:
|
||||
|
|
@ -86,16 +89,20 @@ class MailingContactImport(models.TransientModel):
|
|||
for email, values in unique_contacts.items()
|
||||
])
|
||||
|
||||
ignored = len(contacts) - len(unique_contacts)
|
||||
if ignored := len(contacts) - len(unique_contacts):
|
||||
message = _(
|
||||
"Contacts successfully imported. Number of contacts imported: %(imported_count)s. Number of duplicates ignored: %(duplicate_count)s",
|
||||
imported_count=len(unique_contacts),
|
||||
duplicate_count=ignored,
|
||||
)
|
||||
else:
|
||||
message = _("Contacts successfully imported. Number of contacts imported: %(imported_count)s", imported_count=len(unique_contacts))
|
||||
|
||||
return {
|
||||
'type': 'ir.actions.client',
|
||||
'tag': 'display_notification',
|
||||
'params': {
|
||||
'message': (
|
||||
_('%i Contacts have been imported.', len(unique_contacts))
|
||||
+ (_(' %i duplicates have been ignored.', ignored) if ignored else '')
|
||||
),
|
||||
'message': message,
|
||||
'type': 'success',
|
||||
'sticky': False,
|
||||
'next': {
|
||||
|
|
@ -120,6 +127,6 @@ class MailingContactImport(models.TransientModel):
|
|||
'name': _('Import Mailing Contacts'),
|
||||
'params': {
|
||||
'context': self.env.context,
|
||||
'model': 'mailing.contact',
|
||||
'active_model': 'mailing.contact',
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue