File:  [Repository] / basket / MPIWGUserFolder.py
Revision 1.1: download - view: text, annotated - select for diffs - revision graph
Thu Mar 2 19:57:32 2006 UTC (18 years, 4 months ago) by dwinter
Branches: MAIN
CVS tags: HEAD
major changes users and groups introduced

    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>