def permission_settings(self, permission=None): """Return user-role permission settings. If 'permission' is passed to the method then only the settings for 'permission' is returned. """ result = [] valid = self.valid_roles() indexes = range(len(valid)) ip = 0 permissions = self.ac_inherited_permissions(1) # Filter permissions if permission: permissions = [p for p in permissions if p[0] == permission] for p in permissions: name, value = p[:2] p = Permission(name, value, self) roles = p.getRoles(default=[]) d = { 'name': name, 'acquire': isinstance(roles, list) and 'CHECKED' or '', 'roles': map(lambda ir, roles=roles, valid=valid, ip=ip: { 'name': "p%dr%d" % (ip, ir), 'checked': (valid[ir] in roles) and 'CHECKED' or '', }, indexes) } ip = ip + 1 result.append(d) return result
def permission_settings(self, permission=None): """Return user-role permission settings. If 'permission' is passed to the method then only the settings for 'permission' is returned. """ result=[] valid=self.valid_roles() indexes=range(len(valid)) ip=0 permissions = self.ac_inherited_permissions(1) # Filter permissions if permission: permissions = [p for p in permissions if p[0] == permission] for p in permissions: name, value = p[:2] p=Permission(name,value,self) roles=p.getRoles(default=[]) d={'name': name, 'acquire': isinstance(roles, list) and 'CHECKED' or '', 'roles': map( lambda ir, roles=roles, valid=valid, ip=ip: { 'name': "p%dr%d" % (ip,ir), 'checked': (valid[ir] in roles) and 'CHECKED' or '', }, indexes) } ip=ip+1 result.append(d) return result
def acquiredRolesAreUsedBy(self, permission): "used by management screen" for p in self.ac_inherited_permissions(1): name, value = p[:2] if name==permission: p=Permission(name,value,self) roles=p.getRoles() return type(roles) is ListType and 'CHECKED' or '' raise 'Invalid Permission', ( "The permission <em>%s</em> is invalid." % escape(permission))
def permissionsOfRole(self, role): "used by management screen" r=[] for p in self.ac_inherited_permissions(1): name, value = p[:2] p=Permission(name,value,self) roles=p.getRoles() r.append({'name': name, 'selected': role in roles and 'SELECTED' or '', }) return r
def acquiredRolesAreUsedBy(self, permission): """Used by management screen. """ for p in self.ac_inherited_permissions(1): name, value = p[:2] if name == permission: p = Permission(name, value, self) roles = p.getRoles() return isinstance(roles, list) and 'CHECKED' or '' raise ValueError, ("The permission <em>%s</em> is invalid." % escape(permission))
def acquiredRolesAreUsedBy(self, permission): """Used by management screen. """ for p in self.ac_inherited_permissions(1): name, value = p[:2] if name==permission: p=Permission(name,value,self) roles=p.getRoles() return isinstance(roles, list) and 'CHECKED' or '' raise ValueError, ( "The permission <em>%s</em> is invalid." % escape(permission))
def manage_acquiredPermissions(self, permissions=[], REQUEST=None): "Change the permissions that acquire" self._isBeingUsedAsAMethod(REQUEST, 0) for p in self.ac_inherited_permissions(1): name, value = p[:2] p=Permission(name,value,self) roles=p.getRoles() if roles is None: continue if name in permissions: p.setRoles(list(roles)) else: p.setRoles(tuple(roles)) if REQUEST is not None: return self.manage_access(REQUEST)
def permissionsOfRole(self, role): """Used by management screen. """ r = [] for p in self.ac_inherited_permissions(1): name, value = p[:2] p = Permission(name, value, self) roles = p.getRoles() r.append({ 'name': name, 'selected': role in roles and 'SELECTED' or '', }) return r
def manage_acquiredPermissions(self, permissions=[], REQUEST=None): """Change the permissions that acquire. """ self._isBeingUsedAsAMethod(REQUEST, 0) for p in self.ac_inherited_permissions(1): name, value = p[:2] p = Permission(name, value, self) roles = p.getRoles() if roles is None: continue if name in permissions: p.setRoles(list(roles)) else: p.setRoles(tuple(roles)) if REQUEST is not None: return self.manage_access(REQUEST)
def rolesOfPermission(self, permission): """Used by management screen. """ valid_roles = self.valid_roles() for p in self.ac_inherited_permissions(1): name, value = p[:2] if name == permission: p = Permission(name, value, self) roles = p.getRoles() return map(lambda role, roles=roles: { 'name': role, 'selected': role in roles and 'SELECTED' or '', }, valid_roles) raise ValueError, ("The permission <em>%s</em> is invalid." % escape(permission))
def rolesOfPermission(self, permission): "used by management screen" valid_roles=self.valid_roles() for p in self.ac_inherited_permissions(1): name, value = p[:2] if name==permission: p=Permission(name,value,self) roles=p.getRoles() return map( lambda role, roles=roles: {'name': role, 'selected': role in roles and 'SELECTED' or '', }, valid_roles) raise 'Invalid Permission', ( "The permission <em>%s</em> is invalid." % escape(permission))
def permission_settings(self): """Return user-role permission settings """ result=[] valid=self.valid_roles() indexes=range(len(valid)) ip=0 for p in self.ac_inherited_permissions(1): name, value = p[:2] p=Permission(name,value,self) roles=p.getRoles(default=[]) d={'name': name, 'acquire': type(roles) is ListType and 'CHECKED' or '', 'roles': map( lambda ir, roles=roles, valid=valid, ip=ip: { 'name': "p%dr%d" % (ip,ir), 'checked': (valid[ir] in roles) and 'CHECKED' or '', }, indexes) } ip=ip+1 result.append(d) return result