Proyecto

General

Perfil

« Anterior | Siguiente » 

Revisión 63

Grupos de usuarios

Ver diferencias:

Users.py
def __init__(self):
pass
def __init__(self,ldap,type,name,surname,nif,user,password,password2):
def __init__(self,ldap,type,name,surname,nif,user,password,password2,departments,classrooms):
self.ldap = ldap
self.type = type
self.name = name
......
self.user = user
self.password = password
self.password2 = password2
self.departments = departments
self.classrooms = classrooms
def validation(self,action):
if action == "add":
......
]
self.ldap.add("uid="+self.user+",ou=People", attr)
return "OK"
......
(ldap.MOD_REPLACE, 'userpassword', [passwd])
]
self.ldap.modify("uid="+self.user+",ou=People", attr)
#self.ldap.modify("uid="+self.user+",ou=People", attr)
#Modify groups
currentGroups = self.getUserGroups()
#sameGroups = set(currentGroups["departments"]) & set(self.departments)
deleteGroups = set(currentGroups["departments"]).difference(set(self.departments))
attr = [
(ldap.MOD_DELETE, 'member', ['uid='+self.user+',ou=People,dc=instituto,dc=extremadura,dc=es'] ),
(ldap.MOD_DELETE, 'memberUid', [self.user] )
]
for d in deleteGroups:
self.ldap.delete('cn='+ d +',ou=Group')
newGroups = set(self.departments).difference(currentGroups["departments"])
#print deleteGroups
#print newGroups
return "OK"
def delete(self):
self.ldap.delete('uid='+ self.user +',ou=People')

Exportar a: Unified diff