0
0
mirror of https://github.com/go-gitea/gitea.git synced 2026-05-17 10:13:37 +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 d94702c071
commit 2db2b09e90
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() defer committer.Close()
var parentGroup *group_model.Group var parentGroup *group_model.Group
parentGroup, err = group_model.GetGroupByID(ctx, opts.NewParent) if opts.NewParent > 0 {
if err != nil { parentGroup, err = group_model.GetGroupByID(ctx, opts.NewParent)
return err if err != nil {
} return err
canAccessNewParent, err := parentGroup.CanAccess(ctx, doer) }
if err != nil { canAccessNewParent, err := parentGroup.CanAccess(ctx, doer)
return err if err != nil {
} return err
if !canAccessNewParent { }
return errors.New("cannot access new parent group") if !canAccessNewParent {
} return errors.New("cannot access new parent group")
}
err = parentGroup.LoadSubgroups(ctx, false) err = parentGroup.LoadSubgroups(ctx, false)
if err != nil { if err != nil {
return err return err
}
} }
if opts.IsGroup { if opts.IsGroup {
var group *group_model.Group var group *group_model.Group
@ -107,7 +109,7 @@ func MoveGroupItem(ctx context.Context, opts MoveGroupOptions, doer *user_model.
if err != nil { if err != nil {
return err return err
} }
if opts.NewPos < 0 { if opts.NewPos < 0 && parentGroup != nil {
opts.NewPos = len(parentGroup.Subgroups) opts.NewPos = len(parentGroup.Subgroups)
} }
if group.ParentGroupID != opts.NewParent || group.SortOrder != opts.NewPos { if group.ParentGroupID != opts.NewParent || group.SortOrder != opts.NewPos {