summaryrefslogtreecommitdiff
path: root/addons/web_linkedin/web_linkedin.py
diff options
context:
space:
mode:
authorChristophe Matthieu <chm@openerp.com>2013-02-28 11:52:55 +0100
committerChristophe Matthieu <chm@openerp.com>2013-02-28 11:52:55 +0100
commit019f267848acd0cffe9b22c276e768afa304bfe8 (patch)
treeb73bd56725162bd49f6ea56f9438c2ec1e07f337 /addons/web_linkedin/web_linkedin.py
parentc2fa5529490d68852a1ab70f029c6d90daa75c31 (diff)
[IMP] linkedin: linkedin_check_similar_partner only one request
bzr revid: chm@openerp.com-20130228105255-r9kpmthhgc4zbgvq
Diffstat (limited to 'addons/web_linkedin/web_linkedin.py')
-rw-r--r--addons/web_linkedin/web_linkedin.py21
1 files changed, 21 insertions, 0 deletions
diff --git a/addons/web_linkedin/web_linkedin.py b/addons/web_linkedin/web_linkedin.py
index 176b0cdfe20..92adb30d3dd 100644
--- a/addons/web_linkedin/web_linkedin.py
+++ b/addons/web_linkedin/web_linkedin.py
@@ -65,6 +65,27 @@ class web_linkedin_fields(osv.Model):
res[partner.id] = partner.linkedin_url
return res
+ def linkedin_check_similar_partner(self, cr, uid, linkedin_datas, context=None):
+ res = []
+ res_partner = self.pool.get('res.partner')
+ for linkedin_data in linkedin_datas:
+ partner_ids = res_partner.search(cr, uid, ["|", ("linkedin_id", "=", linkedin_data['id']),
+ "&", ("linkedin_id", "=", False),
+ "|", ("name", "ilike", linkedin_data['firstName'] + "%" + linkedin_data['lastName']), ("name", "ilike", linkedin_data['lastName'] + "%" + linkedin_data['firstName'])], context=context)
+ if partner_ids:
+ partner = res_partner.read(cr, uid, partner_ids[0], ["image", "mobile", "phone", "parent_id", "name", "email", "function", "linkedin_id"], context=context)
+ if partner['linkedin_id'] and partner['linkedin_id'] != linkedin_data['id']:
+ partner.pop('id')
+ if partner['parent_id']:
+ partner['parent_id'] = partner['parent_id'][0]
+ for key, val in partner.items():
+ if not val:
+ partner.pop(key)
+ res.append(partner)
+ else:
+ res.append({})
+ return res
+
_columns = {
'linkedin_id': fields.char(string="LinkedIn ID", size=50),
'linkedin_url': fields.char(string="LinkedIn url", size=100, store=True),