mirror of
https://codeberg.org/forgejo/forgejo
synced 2024-09-01 20:40:53 +02:00
This is largely based on gitea#6312 by @ashimokawa, with updates and fixes by myself, and incorporates the review feedback given in that pull request, and more. What this patch does is add a new "default_permissions" column to the `repo_units` table (defaulting to read permission), adjusts the permission checking code to take this into consideration, and then exposes a setting that lets a repo administrator enable any user on a Forgejo instance to edit the repo's wiki (effectively giving the wiki unit of the repo "write" permissions by default). By default, wikis will remain restricted to collaborators, but with the new setting exposed, they can be turned into globally editable wikis. Fixes Codeberg/Community#28. Signed-off-by: Gergely Nagy <forgejo@gergo.csillger.hu> (cherry picked from commit4b74439922
) (cherry picked from commit337cf62c10
) (cherry picked from commitb6786fdb32
)
18 lines
342 B
Go
18 lines
342 B
Go
// Copyright 2021 The Gitea Authors. All rights reserved.
|
|
// SPDX-License-Identifier: MIT
|
|
|
|
package v1_22 //nolint
|
|
|
|
import (
|
|
"xorm.io/xorm"
|
|
)
|
|
|
|
func AddDefaultPermissionsToRepoUnit(x *xorm.Engine) error {
|
|
type RepoUnit struct {
|
|
ID int64
|
|
DefaultPermissions int `xorm:"NOT NULL DEFAULT 0"`
|
|
}
|
|
|
|
return x.Sync(&RepoUnit{})
|
|
}
|