Filter groups for a specific member

This commit is contained in:
2022-12-05 17:18:01 +01:00
parent 7463b08c74
commit 9705c8d898
4 changed files with 99 additions and 74 deletions

View File

@@ -25,8 +25,23 @@ func (h GroupsManagementHandler) GetGroup(id string) (group *storage.Group, err
return
}
func (h GroupsManagementHandler) GetGroups(namespaces []string) (groups []storage.Group, err error) {
groups, err = h.storage.GetGroups(namespaces)
func (h GroupsManagementHandler) GetGroups(namespaces []string, member string) (groups []storage.Group, err error) {
groups = []storage.Group{}
g, err := h.storage.GetGroups(namespaces)
if err != nil {
return
}
if member == "" {
return g, nil
}
for _, group := range g {
for _, m := range group.Members {
if m == member {
groups = append(groups, group)
break
}
}
}
return
}