0
0
mirror of https://github.com/go-gitea/gitea.git synced 2026-05-03 09:14:04 +02:00

fix moving items to the root-level (GroupID <= 0)

This commit is contained in:
☙◦ The Tablet ❀ GamerGirlandCo ◦❧ 2025-08-18 18:15:29 -04:00
parent 4409bf8dec
commit 84799ee16d
No known key found for this signature in database
GPG Key ID: 924A5F6AF051E87C

View File

@ -85,21 +85,23 @@ func MoveGroupItem(ctx context.Context, opts MoveGroupOptions, doer *user_model.
}
defer committer.Close()
var parentGroup *group_model.Group
parentGroup, err = group_model.GetGroupByID(ctx, opts.NewParent)
if err != nil {
return err
}
canAccessNewParent, err := parentGroup.CanAccess(ctx, doer)
if err != nil {
return err
}
if !canAccessNewParent {
return errors.New("cannot access new parent group")
}
if opts.NewParent > 0 {
parentGroup, err = group_model.GetGroupByID(ctx, opts.NewParent)
if err != nil {
return err
}
canAccessNewParent, err := parentGroup.CanAccess(ctx, doer)
if err != nil {
return err
}
if !canAccessNewParent {
return errors.New("cannot access new parent group")
}
err = parentGroup.LoadSubgroups(ctx, false)
if err != nil {
return err
err = parentGroup.LoadSubgroups(ctx, false)
if err != nil {
return err
}
}
if opts.IsGroup {
var group *group_model.Group
@ -107,7 +109,7 @@ func MoveGroupItem(ctx context.Context, opts MoveGroupOptions, doer *user_model.
if err != nil {
return err
}
if opts.NewPos < 0 {
if opts.NewPos < 0 && parentGroup != nil {
opts.NewPos = len(parentGroup.Subgroups)
}
if group.ParentGroupID != opts.NewParent || group.SortOrder != opts.NewPos {