[FIX] mass_mailing: possibility to subscribe again to a mailing list
It was not possible to subscribe again to a mailing list once unsubscribed
This commit is contained in:
parent
ee4df1e397
commit
b68da05833
|
@ -55,7 +55,7 @@ class MassMailController(http.Controller):
|
|||
email = request.session['mass_mailing_email']
|
||||
|
||||
if email:
|
||||
contact_ids = Contacts.search(cr, SUPERUSER_ID, [('list_id', '=', int(list_id)), ('email', '=', email)], context=context)
|
||||
contact_ids = Contacts.search(cr, SUPERUSER_ID, [('list_id', '=', int(list_id)), ('email', '=', email), ('opt_out', '=', False)], context=context)
|
||||
is_subscriber = len(contact_ids) > 0
|
||||
|
||||
return {'is_subscriber': is_subscriber, 'email': email}
|
||||
|
@ -65,9 +65,12 @@ class MassMailController(http.Controller):
|
|||
cr, uid, context = request.cr, request.uid, request.context
|
||||
Contacts = request.registry['mail.mass_mailing.contact']
|
||||
|
||||
contact_ids = Contacts.search(cr, SUPERUSER_ID, [('list_id', '=', int(list_id)), ('email', '=', email)], context=context)
|
||||
contact_ids = Contacts.search_read(cr, SUPERUSER_ID, [('list_id', '=', int(list_id)), ('email', '=', email)], ['opt_out'], context=context)
|
||||
if not contact_ids:
|
||||
Contacts.add_to_list(cr, SUPERUSER_ID, email, int(list_id), context=context)
|
||||
else:
|
||||
if contact_ids[0]['opt_out']:
|
||||
Contacts.write(cr, SUPERUSER_ID, [contact_ids[0]['id']], {'opt_out': False}, context=context)
|
||||
# add email to session
|
||||
request.session['mass_mailing_email'] = email
|
||||
return True
|
||||
|
|
Loading…
Reference in New Issue