Add startswith(id,...) query for group

This commit is contained in:
Ilja Neumann
2020-10-13 14:22:47 +02:00
parent c31732872d
commit 8bcf5d4096

View File

@@ -4,6 +4,7 @@ import (
"context"
"github.com/owncloud/ocis/accounts/pkg/storage"
"path/filepath"
"regexp"
"github.com/gofrs/uuid"
"github.com/golang/protobuf/ptypes/empty"
@@ -59,6 +60,12 @@ func (s Service) ListGroups(c context.Context, in *proto.ListGroupsRequest, out
searchResults, _ = s.index.FindByPartial(&proto.Group{}, "DisplayName", "*")
}
var startsWithIDQuery = regexp.MustCompile(`^startswith\(id,'(.*)'\)$`)
match := startsWithIDQuery.FindStringSubmatch(in.Query)
if len(match) == 2 {
searchResults = []string{match[1]}
}
for _, hit := range searchResults {
g := &proto.Group{}
if err = s.repo.LoadGroup(c, hit, g); err != nil {