diff options
| author | Thibault Delavallée <tde@odoo.com> | 2019-07-17 10:58:39 +0000 |
|---|---|---|
| committer | Thibault Delavallée <tde@odoo.com> | 2019-07-17 15:50:33 +0000 |
| commit | 772e1c0cc4e75cec971d2b4e1c820eb54872dc93 (patch) | |
| tree | 30126a9fa9acabb9f75ab1d0665428180b9cc444 /addons/website_mass_mailing/controllers/main.py | |
| parent | 2896aad34e797b6ca65a8efe3c5d71f31500a9a2 (diff) | |
[REF] mass_mailing: rename mail.mass_mailing.{.contact{_rel}, list{.merge}} models
PURPOSE
Mass mailing is currently a bit messy. As SMS will be added as a way to notify
people in mass through SMS let us take this opportunity to somehow clean this
application: organization, light code cleaning, model renaming.
SPECIFICATIONS
Rename mail.mass_mailing.list and mail.mass_mailing.list to mailing.list
and mailing.list.merge. Rename mail.mass_mailing.contact to mailing.contact.
Rename mail.mailing_list.list_contact_rel to mailing.contact.subscription.
Rationale :
* those new names are easier to understand: mailing.list and mailing.contact
are less mail-related, especially taking into account that SMS will allow
to be less mail-oriented;
* those names are easier to read / find / understand;
* align wizard and sub-models naming with the main naming;
* have a mailing as first part of namespacing;
MIGRATION
mail.mass_mailing.list model -> mailing.list
mail.mass_mailing.list.merge model -> mailing.list.merge
mail.mass_mailing.contact model -> mailing.contact
mail.mass_mailing.list_contact_rel model -> mailing.contact.subscription
mail_mass_mailing_contact_list_rel table -> mailing_contact_list_rel (specific
case of a decorated m2m)
fields updated (no column change)
* mailing.list: subscription_contact_ids -> subscription_ids
LINKS
Task ID 2037906
Preparing task ID 1997464 (SMS addition in mass mailing)
PR #34938
Diffstat (limited to 'addons/website_mass_mailing/controllers/main.py')
| -rw-r--r-- | addons/website_mass_mailing/controllers/main.py | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/addons/website_mass_mailing/controllers/main.py b/addons/website_mass_mailing/controllers/main.py index fc49d23d83b..dc34504426c 100644 --- a/addons/website_mass_mailing/controllers/main.py +++ b/addons/website_mass_mailing/controllers/main.py @@ -18,29 +18,29 @@ class MassMailController(MassMailController): is_subscriber = False if email: - contacts_count = request.env['mail.mass_mailing.list_contact_rel'].sudo().search_count([('list_id', 'in', [int(list_id)]), ('contact_id.email', '=', email), ('opt_out', '=', False)]) + contacts_count = request.env['mailing.contact.subscription'].sudo().search_count([('list_id', 'in', [int(list_id)]), ('contact_id.email', '=', email), ('opt_out', '=', False)]) is_subscriber = contacts_count > 0 return {'is_subscriber': is_subscriber, 'email': email} @route('/website_mass_mailing/subscribe', type='json', website=True, auth="public") def subscribe(self, list_id, email, **post): - List_contact_rel = request.env['mail.mass_mailing.list_contact_rel'].sudo() - Contacts = request.env['mail.mass_mailing.contact'].sudo() + ContactSubscription = request.env['mailing.contact.subscription'].sudo() + Contacts = request.env['mailing.contact'].sudo() name, email = Contacts.get_name_email(email) - list_contact_rel = List_contact_rel.search([('list_id', '=', int(list_id)), ('contact_id.email', '=', email)], limit=1) - if not list_contact_rel: + subscription = ContactSubscription.search([('list_id', '=', int(list_id)), ('contact_id.email', '=', email)], limit=1) + if not subscription: # inline add_to_list as we've already called half of it contact_id = Contacts.search([('email', '=', email)], limit=1) if not contact_id: contact_id = Contacts.create({'name': name, 'email': email}) - List_contact_rel.create({'contact_id': contact_id.id, 'list_id': int(list_id)}) - elif list_contact_rel.opt_out: - list_contact_rel.opt_out = False + ContactSubscription.create({'contact_id': contact_id.id, 'list_id': int(list_id)}) + elif subscription.opt_out: + subscription.opt_out = False # add email to session request.session['mass_mailing_email'] = email - mass_mailing_list = request.env['mail.mass_mailing.list'].sudo().browse(list_id) + mass_mailing_list = request.env['mailing.list'].sudo().browse(list_id) return {'toast_content': mass_mailing_list.toast_content} @route(['/website_mass_mailing/get_content'], type='json', website=True, auth="public") |
