From 0c0338719c58beca672d6d807a071ebacfc5ffa0 Mon Sep 17 00:00:00 2001 From: Valentin Samir Date: Mon, 1 Apr 2013 22:32:36 +0200 Subject: [PATCH] =?UTF-8?q?On=20attrify=20=C3=A9galement=20lorsque=20la=20?= =?UTF-8?q?valeur=20est=20appel=C3=A9=20avec=20.get(...)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- attributs.py | 8 +++++++- lc_ldap.py | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/attributs.py b/attributs.py index 57ba83e..3cfe827 100644 --- a/attributs.py +++ b/attributs.py @@ -102,10 +102,16 @@ class AttrsDict(dict) : values = super(AttrsDict, self).__getitem__(attr) if not isinstance(values, list): values = [ values ] - values = [ attrify(unicode(val, 'utf-8'), attr, self._ldif, self._conn, self._check_ctxt) for val in values] + values = [ attrify(unicode(val, 'utf-8'), attr, self._ldif, self._conn, self._check_ctxt) for val in values if not isinstance(val, Attr)] self[attr] = values return values + def get(self, value, default_value): + try: + return self[value] + except KeyError: + return default_value + class Attr(object): """Objet représentant un attribut. diff --git a/lc_ldap.py b/lc_ldap.py index 39ba6da..30df756 100644 --- a/lc_ldap.py +++ b/lc_ldap.py @@ -248,7 +248,7 @@ class lc_ldap(ldap.ldapobject.LDAPObject, object): uldif['objectClass'] = [u'machineWifi'] assert isinstance(owner, adherent) or isinstance(owner, club) - elif realm in ["fil", "fil-v6", "personnel-ens"]: + elif realm in ["fil-adherents", "fil-v6", "personnel-ens"]: uldif['objectClass'] = [u'machineFixe'] assert isinstance(owner, adherent) or isinstance(owner, club)