From 6dc985b0add0af59fd98f7cc6437600dede11d72 Mon Sep 17 00:00:00 2001 From: Jeremy Kersten Date: Wed, 21 Sep 2016 15:58:12 +0200 Subject: [PATCH] [FIX] website_crm_partner_assign: allow partner to be uninteressed for a lead. Avoid traceback "'int' object has no attribute 'partner_id'" uid is the id and not the browser record of 'user' Avoid traceback: Database fetch misses ids (u'') and has extra ids (), may be caused by a type incoherence in a previous request. JS call with id as string. Avoid traceback: Invalid value res.partner(x,y,z) in domain term ('partner_id', 'in', res.partner(x,y,z)) Search in new api return browseRecord now Avoid to write on a lead without the right on it. --- addons/website_crm_partner_assign/models/crm_lead.py | 8 ++++---- .../static/src/js/crm_partner_assign.js | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/addons/website_crm_partner_assign/models/crm_lead.py b/addons/website_crm_partner_assign/models/crm_lead.py index fdcfdb6d61c..1da4264050f 100644 --- a/addons/website_crm_partner_assign/models/crm_lead.py +++ b/addons/website_crm_partner_assign/models/crm_lead.py @@ -204,8 +204,8 @@ class CrmLead(models.Model): else: message = _('

I am not interested by this lead. I have not contacted the lead.

') partner_ids = self.env['res.partner'].search( - [('id', 'child_of', self.env.uid.partner_id.commercial_partner_id.id)]) - self.sudo().message_unsubscribe(partner_ids) + [('id', 'child_of', self.env.user.partner_id.commercial_partner_id.id)]) + self.sudo().message_unsubscribe(partner_ids=partner_ids.ids) if comment: message += '

%s

' % comment self.message_post(body=message, subtype="mail.mt_note") @@ -213,8 +213,8 @@ class CrmLead(models.Model): 'partner_assigned_id': False } if partner_ids: - values['partner_declined_ids'] = map(lambda p: (4, p, 0), partner_ids) - self.write(values) + values['partner_declined_ids'] = map(lambda p: (4, p, 0), partner_ids.ids) + self.sudo().write(values) @api.multi def update_lead_portal(self, values): diff --git a/addons/website_crm_partner_assign/static/src/js/crm_partner_assign.js b/addons/website_crm_partner_assign/static/src/js/crm_partner_assign.js index cb9f820d580..19902593573 100644 --- a/addons/website_crm_partner_assign/static/src/js/crm_partner_assign.js +++ b/addons/website_crm_partner_assign/static/src/js/crm_partner_assign.js @@ -35,7 +35,7 @@ $('.interested_partner_assign_confirm').on('click',function(e){ $('.desinterested_partner_assign_confirm').on('click',function(e){ new Model('crm.lead') .call("partner_desinterested", - [[$('.desinterested_partner_assign_form .assign_lead_id').val()], + [[parseInt($('.desinterested_partner_assign_form .assign_lead_id').val())], $('.desinterested_partner_assign_form .comment_desinterested').val(), $('.desinterested_partner_assign_form .contacted_desinterested').prop('checked')]) .then(function(){