Esthtisme.
darcs-hash:20060309235447-68412-3733c8be4ceec74ea69f9cae948181293fabac74.gz
This commit is contained in:
parent
95a6fe21bd
commit
aea8585794
1 changed files with 51 additions and 46 deletions
|
@ -506,9 +506,10 @@ class crans_ldap:
|
|||
def search(self, expression, mode=''):
|
||||
"""
|
||||
Recherche dans la base LDAP, expression est une chaîne :
|
||||
une expression : champ1=expr1 champ2=expr2 champ3!=expr3....
|
||||
soit un seul terme, dans ce cas cherche sur les champs de auto_search_champs
|
||||
Si mode ='w' les instances crées seront en mode d'écriture
|
||||
* soit une expression : champ1=expr1&champ2=expr2&champ3!=expr3...
|
||||
* soit un seul terme, dans ce cas cherche sur les champs de
|
||||
auto_search_champs
|
||||
Si mode='w', les instances crées seront en mode d'écriture
|
||||
"""
|
||||
|
||||
if type(expression) == str:
|
||||
|
@ -517,7 +518,7 @@ class crans_ldap:
|
|||
elif type(expression) == unicode:
|
||||
expression = expression.encode('utf-8')
|
||||
else:
|
||||
raise TypeError(u'Chaine attendue')
|
||||
raise TypeError(u'Chaîne attendue')
|
||||
|
||||
if not expression:
|
||||
return []
|
||||
|
@ -531,9 +532,11 @@ class crans_ldap:
|
|||
|
||||
# Fonction utile
|
||||
def build_filtre(champ, expr, neg=0):
|
||||
""" Retourne une chaine pour recherche dans la base LDAP
|
||||
du style (champ=expr) en adaptant les valeurs de expr au champ
|
||||
si neg = 1: retourne le négatif : (!(champ=expr))"""
|
||||
"""
|
||||
Retourne une chaine pour recherche dans la base LDAP
|
||||
du style (champ=expr) en adaptant les valeurs de expr au champ.
|
||||
Si neg = 1, retourne le négatif : (!(champ=expr))
|
||||
"""
|
||||
el = ''
|
||||
if champ in ['host', 'hostAlias']:
|
||||
if expr[-1] == '*':
|
||||
|
@ -548,13 +551,13 @@ class crans_ldap:
|
|||
except: pass
|
||||
elif champ == 'paiement' and expr == 'ok':
|
||||
# Paiement donnant droit à une connexion maintenant ?
|
||||
# il doit avoir payé pour
|
||||
# l'année en cours ou pour l'année précédente
|
||||
# si on est en septembre
|
||||
# (il doit avoir payé pour l'année en cours ou pour
|
||||
# l'année précédente si on est en septembre
|
||||
#
|
||||
# Dans tous les cas, pour un adhérent, le paiement est considéré non ok
|
||||
# s'il n'a pas fourni sa carte d'etudiant alors que l'on est desormais
|
||||
# en periode de bloquage definifif (cf config.py).
|
||||
# Dans tous les cas, pour un adhérent, le paiement est
|
||||
# considéré non ok s'il n'a pas fourni sa carte d'etudiant
|
||||
# alors que l'on est desormais en periode de bloquage
|
||||
# définifif (cf config.py).
|
||||
if localtime()[1] == 9:
|
||||
# Pour septembre paiement année précédente ok
|
||||
el = "(|(paiement=%s)(paiement=%s))" % (int(ann_scol), int(ann_scol)-1)
|
||||
|
@ -637,7 +640,8 @@ class crans_ldap:
|
|||
# Filtre sur un seul champ
|
||||
# => on retourne tout
|
||||
for i in filtres:
|
||||
if not r[i]: continue
|
||||
if not r[i]:
|
||||
continue
|
||||
for res in r[i]:
|
||||
if i == "machine":
|
||||
if res[1].has_key('puissance'):
|
||||
|
@ -668,8 +672,9 @@ class crans_ldap:
|
|||
# Traitement des machines
|
||||
mach_adh = [] # liste de dn d'adhérents et de clubs
|
||||
for res in r['machine']:
|
||||
dn = string.join(res[0].split(',')[-4:],',')
|
||||
if dn[:3] != 'aid' and dn[:3] != 'cid': continue
|
||||
dn = ','.join(res[0].split(',')[-4:])
|
||||
if dn[:3] != 'aid' and dn[:3] != 'cid':
|
||||
continue
|
||||
if dn not in mach_adh:
|
||||
mach_adh.append(dn)
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue