From 1639d00fd982398e3c9a3a081ec9a8381d85e95e Mon Sep 17 00:00:00 2001 From: ced <> Date: Wed, 27 Dec 2006 08:01:28 +0000 Subject: [PATCH] Remove set for python2.3 bzr revid: ced-00f27c71c2120e421574d935aaf6a828cbeca95f --- addons/partner_ldap/wizard/synchronize.py | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/addons/partner_ldap/wizard/synchronize.py b/addons/partner_ldap/wizard/synchronize.py index 9663324de2a..0714a76cf4f 100644 --- a/addons/partner_ldap/wizard/synchronize.py +++ b/addons/partner_ldap/wizard/synchronize.py @@ -102,17 +102,23 @@ class sync_ldap(wizard.interface): LDAP_TERP_MAPPER.keys())) address = pooler.get_pool(cr.dbname).get('res.partner.address') terp_objs = dict([(x['id'], x) for x in address.read(cr, uid, address.search(cr, uid, []))]) - ldap_set = set([int(x['uid'][0]) for x in ldap_objs.values()]) - terp_set = set(terp_objs.keys()) - for to_delete in ldap_set - terp_set: + ldap_set = [int(x['uid'][0]) for x in ldap_objs.values()] + terp_set = terp_objs.keys() + for to_delete in ldap_set: + if to_delete in terp_set: + continue l.delete_s('uid=%s,%s' % (to_delete, BASE_DN)) - for to_add in terp_set - ldap_set: + for to_add in terp_set: + if to_add in ldap_set: + continue new_dn = 'uid=%s,%s' % (to_add, BASE_DN) ldap_data = {'objectclass' : ['organizationalPerson', 'inetOrgPerson']} ldap_data.update(terp2ldap(terp_objs[to_add])) l.add_s(new_dn, ldap.modlist.addModlist(ldap_data)) address.write(cr, uid, [to_add], {'dn' : new_dn}) - for to_update in terp_set.intersection(ldap_set): + for to_update in terp_set: + if to_update not in ldap_set: + continue current_dn = 'uid=%s,%s' % (to_update, BASE_DN) modlist = ldap.modlist.modifyModlist(ldap_objs[current_dn], terp2ldap(terp_objs[to_update])) if modlist: