Proyecto

General

Perfil

« Anterior | Siguiente » 

Revisión 196

Añadido por jredrejo hace más de 13 años

corregido bug que producía algunos login repetidos

Ver diferencias:

controlies/trunk/debian/changelog
controlies (0.4-7) unstable; urgency=low
* Corregido bug que podía producir repetición de algún login
-- José L. Redrejo Rodríguez <jredrejo@debian.org> Fri, 16 Sep 2011 12:38:09 +0200
controlies (0.4-6) unstable; urgency=low
* Eliminados timeout de apache para permitir el proceso de ficheros con
controlies/trunk/applications/controlies/modules/Rayuela2Ldap.py
self.ldap_con =conexion
self.usuarios=[]
self.dni_usuarios=[]
self.logins=[]
self.archivo=archivo
......
def chk_username(self,login,keep=False):
"""Comprueba si el login existe ya en la base de datos
de ldap, y si existe le va aumentando el número del final"""
result = self.ldap_con.search("ou=People","uid="+ login,["uid"])
if len(result)==0 :
if not keep:
login= login + "01"
return login
if not keep:
nuevo_login= login + "01"
else:
nuevo_login=login
result = self.ldap_con.search("ou=People","uid="+ nuevo_login,["uid"])
if len(result)==0 and nuevo_login not in self.logins:
return nuevo_login
else:
i=2
while len(result)>0:
while len(result)>0 or nuevo_login in self.logins:
nuevo_login=login + "%02d" % (i)
result = self.ldap_con.search("ou=People","uid="+ nuevo_login,["uid"])
i += 1
......
if len(usuario["segundo-apellido"])>0:
login += usuario["segundo-apellido"][0].lower().strip()
usuario["login"]=self.chk_username(login)
self.logins.append(usuario["login"])
else: #sin nie ni dni, no podemos gestionarlo
self.usuarios.remove(usuario)

Exportar a: Unified diff