Search by unicode
This commit is contained in:
parent
e18e5222b7
commit
9540bc572c
4 changed files with 15 additions and 16 deletions
11
attributs.py
11
attributs.py
|
@ -238,7 +238,7 @@ class Attr(object):
|
|||
if unicode(self) in liste_exclue:
|
||||
return
|
||||
if self.unique:
|
||||
res = self.conn.search('%s=%s' % (attr, str(self)))
|
||||
res = self.conn.search(u'%s=%s' % (attr, str(self)))
|
||||
if res:
|
||||
raise UniquenessError("%s déjà existant" % attr, [r.dn for r in res])
|
||||
|
||||
|
@ -467,7 +467,7 @@ class mail(Attr):
|
|||
if res:
|
||||
raise ValueError("Le mail %s est déjà pris." % (str(self)))
|
||||
else:
|
||||
check = self.conn.search("mail=%s" % mail)
|
||||
check = self.conn.search(u'mail=%s' % mail)
|
||||
if len(check) >= 1:
|
||||
raise ValueError("Le mail %s est déjà pris." % (str(self)))
|
||||
|
||||
|
@ -639,7 +639,7 @@ class host(dnsAttr):
|
|||
if str(self) in liste_exclue:
|
||||
return
|
||||
if attr in ["host", "hostAlias"]:
|
||||
res = self.conn.search('(|(host=%s)(hostAlias=%s))' % ((str(self),)*2))
|
||||
res = self.conn.search(u'(|(host=%s)(hostAlias=%s))' % ((str(self),)*2))
|
||||
if res:
|
||||
raise ValueError("Hôte déjà existant", [r.dn for r in res])
|
||||
|
||||
|
@ -749,7 +749,6 @@ class rid(Attr):
|
|||
continue
|
||||
else:
|
||||
continue
|
||||
|
||||
self.value = rid
|
||||
|
||||
def __unicode__(self):
|
||||
|
@ -930,7 +929,7 @@ class responsable(Attr):
|
|||
return self._value
|
||||
else:
|
||||
try:
|
||||
res = self.conn.search('aid=%s' % self.__value)[0]
|
||||
res = self.conn.search(u'aid=%s' % self.__value)[0]
|
||||
except IndexError:
|
||||
raise ValueError("get_respo: L'adherent %s n'existe pas ou plus" % (self.__value))
|
||||
self._value = res
|
||||
|
@ -966,7 +965,7 @@ class imprimeurClub(Attr):
|
|||
return self._value
|
||||
else:
|
||||
try:
|
||||
res = self.conn.search('aid=%s' % int(self.__value))[0]
|
||||
res = self.conn.search(u'aid=%s' % int(self.__value))[0]
|
||||
except IndexError:
|
||||
raise ValueError("get_imprimeur: L'adhérent aid=%r n'existe pas ou plus" % self.__value)
|
||||
self._value = res
|
||||
|
|
|
@ -113,7 +113,7 @@ class lc_ldap(ldap.ldapobject.LDAPObject, object):
|
|||
raise ValueError("Même root doit préciser qui il est pour se connecter à la base LDAP.")
|
||||
self.current_login = user
|
||||
else:
|
||||
current_user = self.search("uid=%s" % user)
|
||||
current_user = self.search(u'uid=%s' % user)
|
||||
if len(current_user) != 1:
|
||||
raise ValueError("L'utilisateur %s n'est pas présent dans la base en *1* exemplaire." % user)
|
||||
else:
|
||||
|
@ -233,7 +233,7 @@ class lc_ldap(ldap.ldapobject.LDAPObject, object):
|
|||
if login is None:
|
||||
login = self.current_login
|
||||
#adm, serveurs, bornes, wifi, adherents, gratuit ou personnel-ens"""
|
||||
owner = self.search('objectClass=*', dn=parent, scope=0)[0]
|
||||
owner = self.search(u'objectClass=*', dn=parent, scope=0)[0]
|
||||
|
||||
if realm in ["adm", "serveurs", "serveurs-v6", "adm-v6"]:
|
||||
uldif['objectClass'] = [u'machineCrans']
|
||||
|
|
|
@ -673,13 +673,13 @@ class adherent(proprio):
|
|||
def clubs(self):
|
||||
"""Renvoie la liste des clubs dont l'adherent est responsable"""
|
||||
if self._clubs is None:
|
||||
self._clubs = self.conn.search('responsable=%s' % self['aid'][0], scope = 1, mode=self.mode)
|
||||
self._clubs = self.conn.search(u'responsable=%s' % self['aid'][0], scope = 1, mode=self.mode)
|
||||
return self._clubs
|
||||
|
||||
def imprimeur_clubs(self):
|
||||
"""Renvoie la liste des clubs dont l'adherent est imprimeur"""
|
||||
if self._imprimeur_clubs is None:
|
||||
self._imprimeur_clubs = self.conn.search('imprimeurClub=%s' % self['aid'][0], scope = 1, mode=self.mode)
|
||||
self._imprimeur_clubs = self.conn.search(u'imprimeurClub=%s' % self['aid'][0], scope = 1, mode=self.mode)
|
||||
return self._imprimeur_clubs
|
||||
|
||||
def compte(self, login = None, uidNumber=0, hash_pass = '', shell=config.login_shell):
|
||||
|
@ -721,14 +721,14 @@ class adherent(proprio):
|
|||
self['userPassword'] = [unicode(hash_pass)]
|
||||
|
||||
if uidNumber:
|
||||
if self.conn.search('(uidNumber=%s)' % uidNumber):
|
||||
if self.conn.search(u'(uidNumber=%s)' % uidNumber):
|
||||
raise ValueError(u'uidNumber pris')
|
||||
else:
|
||||
pool_uid = range(1001, 9999)
|
||||
random.shuffle(pool_uid)
|
||||
while len(pool_uid) > 0:
|
||||
uidNumber = pool_uid.pop() # On choisit un uid
|
||||
if not self.conn.search('(uidNumber=%s)' % uidNumber):
|
||||
if not self.conn.search(u'(uidNumber=%s)' % uidNumber):
|
||||
break
|
||||
if not len(pool_uid):
|
||||
raise ValueError("Plus d'uid disponibles !")
|
||||
|
|
8
test.py
8
test.py
|
@ -131,7 +131,7 @@ def tests_machines(parent_dn, realm_list, ipsec=False):
|
|||
print OK
|
||||
anim("Suppression d'une machines %s" % realm)
|
||||
try:
|
||||
machine = conn.search('mid=%s' % machine['mid'][0], mode='rw')[0]
|
||||
machine = conn.search(u'mid=%s' % machine['mid'][0], mode='rw')[0]
|
||||
machine.delete()
|
||||
del(machine)
|
||||
except Exception as error:
|
||||
|
@ -234,7 +234,7 @@ else:
|
|||
|
||||
anim("Suppression d'un club")
|
||||
try:
|
||||
club = conn.search('cid=%s' % club['cid'][0], mode='rw')[0]
|
||||
club = conn.search(u'cid=%s' % club['cid'][0], mode='rw')[0]
|
||||
club.delete()
|
||||
except Exception:
|
||||
print ERREUR
|
||||
|
@ -252,7 +252,7 @@ else:
|
|||
if adherent:
|
||||
anim("Suppression d'un adherent")
|
||||
try:
|
||||
adherent = conn.search('aid=%s' % adherent['aid'][0], mode='rw')[0]
|
||||
adherent = conn.search(u'aid=%s' % adherent['aid'][0], mode='rw')[0]
|
||||
adherent.delete()
|
||||
except Exception:
|
||||
print ERREUR
|
||||
|
@ -274,7 +274,7 @@ except Exception as error:
|
|||
else:
|
||||
print OK
|
||||
try:
|
||||
facture = conn.search('fid=%s' % facture['fid'][0], mode='rw')[0]
|
||||
facture = conn.search(u'fid=%s' % facture['fid'][0], mode='rw')[0]
|
||||
facture.delete()
|
||||
except Exception:
|
||||
print ERREUR
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue