def getGroup(self, group=None, user=None): """ No args lists all groups, one args returns JSON with users.""" if group != None: result = {} result['users'] = GroupInfo.usersInGroup(group) return result elif user != None: return GroupInfo.groupsForUser(user).keys() else: return GroupInfo.listGroups()
def user(self, userName): """ Web page of details about the user. """ self.validate(userName) groups = GroupInfo.groupsForUser(userName).keys() requests = UserRequests.listRequests(userName).keys() allGroups = GroupInfo.listGroups() self.validate(groups) self.validate(requests) self.validate(allGroups) return self.templatepage("User", user=userName, groups=groups, allGroups=allGroups, requests=requests)
def getGroup(self, group=None, user=None): """ No args lists all groups, one args returns JSON with users and priority """ if group != None: result = {} result['users'] = GroupInfo.usersInGroup(group) result['priority'] = GroupManagement.getPriority(group) return json.dumps(result) elif user != None: return GroupInfo.groupsForUser(user).keys() else: return GroupInfo.listGroups()
def user(self, userName): """ Web page of details about the user, and sets user priority """ self.validate(userName) groups = GroupInfo.groupsForUser(userName).keys() requests = UserRequests.listRequests(userName).keys() priority = UserManagement.getPriority(userName) allGroups = GroupInfo.listGroups() self.validate(groups) self.validate(requests) self.validate(allGroups) return self.templatepage("User", user=userName, groups=groups, allGroups=allGroups, requests=requests, priority=priority)
def getGroup(self, group=None, user=None): """ No args lists all groups, one args returns JSON with users and priority """ if group != None: result = {} result['users'] = GroupInfo.usersInGroup(group) try: result['priority'] = GroupManagement.getPriority(group) except IndexError: raise cherrypy.HTTPError(404, "Cannot find group/group priority") return result elif user != None: return GroupInfo.groupsForUser(user).keys() else: return GroupInfo.listGroups()
def groups(self): """ Lists all users. Should be paginated later """ allGroups = GroupInfo.listGroups() self.validate(allGroups) return self.templatepage("Groups", groups=allGroups)