add FindGroupsByCond helper function

This commit is contained in:
☙◦ The Tablet ❀ GamerGirlandCo ◦❧
2026-04-02 20:00:43 -04:00
parent b598db7608
commit 0ed90f83f9
+15
View File
@@ -3,6 +3,8 @@ package group
import (
"code.gitea.io/gitea/models/db"
user_model "code.gitea.io/gitea/models/user"
"code.gitea.io/gitea/modules/log"
"code.gitea.io/gitea/modules/setting"
"code.gitea.io/gitea/modules/structs"
"code.gitea.io/gitea/modules/util"
"context"
@@ -139,6 +141,19 @@ func FindGroups(ctx context.Context, opts *FindGroupsOptions) (GroupList, error)
Find(&groups)
}
func FindGroupsByCond(ctx context.Context, cond builder.Cond, parentGroupID int64) (GroupList, error) {
if parentGroupID > 0 {
cond = cond.And(builder.Eq{"repo_group.id": parentGroupID})
} else {
cond = cond.And(builder.IsNull{"repo_group.id"})
}
sess := db.GetEngine(ctx).Where(cond)
groups := make([]*Group, 0)
return groups, sess.
Asc("repo_group.id").
Find(&groups)
}
type ErrGroupNotExist struct {
ID int64
}