1: """Extension of the Userfolder for MPIWG purposes"""
2: from AccessControl.User import User, UserFolder
3: import types
4:
5: class MPIWGUser( User ):
6: """MPIWG USER """
7:
8:
9: def __init__(self, name, password, roles, domains, email):
10: " init MPIWGUser "
11:
12: self.name = name
13: self.__ = password
14: self.roles = roles
15: self.domains = domains
16: self.email = email
17:
18: def getEmail(self):
19: " email attribut eines user objektes "
20: return self.email
21:
22: def getPassword(self):
23: " __ attribut eines user objektes "
24: return self.__
25:
26:
27: class MPIWGUserFolder( UserFolder ):
28: " MPIWG User Folder"""
29:
30: meta_type = 'MPIWGUserFolder'
31: def manage_user(self):
32: """manage user"""
33:
34: def addUser(self, user, password, group="", domains="", email="",
35: RESPONSE=None):
36: " validate addUserForm "
37: user = str(user)
38: if type(group)==types.StringType:
39: group=[group]
40: if type(domains)==types.StringType: # wie bei group
41: domains=[domains]
42:
43: #if user and password and password==password2 and (user not in self.aq_parent.acl_users.getUserNames()):
44: if user and password:
45: self.aq_parent.acl_users._doAddUser(user, password, group,
46: domains, email)
47: else:
48: #TODO: make sure that user doesn't exist also in LDAP
49: return "ERROR: user already exist"
50: if RESPONSE is not None:
51: RESPONSE.redirect('index_html')
52: """
53: def editUser(self, user, olduser, password, group, domains,
54: realname, comments, RESPONSE=None):
55: " edit user "
56: <hnlich wie addUser>
57: """
58:
59: # siehe auch: User.py --> _doAddUser() / _doEditUser
60:
61: def getUserNames(self):
62: """getUserNames implement getUserNames"""
63: return self.data.values()
64: def _doAddUser(self, user, password, roles, domains, email=""):
65: " add User "
66: userObject = MPIWGUser(user, password, roles, domains, email)
67: self.data[user] = userObject
68:
69: def _doEditUser(self, user, password, roles, domains, email=""):
70: " edit User "
71: userObject = self.data[user]
72: userObject.__ = password
73: userObject.roles = roles
74: userObject.domains = domains
75: userObject.email = email
76:
77:
78: def manage_addMPIWGUserFolderForm(self, RESPONSE=None):
79: " userfolder add form "
80: #no user entries necessessary
81: RESPONSE.redirect('manage_addMPIWGUserFolder')
82:
83: def manage_addMPIWGUserFolder(self, RESPONSE=None):
84: " add UF "
85: ufolder = MPIWGUserFolder()
86: self._setObject('acl_users', ufolder)
87:
88: if RESPONSE is not None:
89: RESPONSE.redirect('manage_main')
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>