]> source.dussan.org Git - gitea.git/commitdiff
Add repository setting to enable/disable releases unit (#22671)
authorBrecht Van Lommel <brecht@blender.org>
Wed, 1 Feb 2023 01:31:19 +0000 (02:31 +0100)
committerGitHub <noreply@github.com>
Wed, 1 Feb 2023 01:31:19 +0000 (01:31 +0000)
To go along with similar settings for issues, pulls, projects, packages.

options/locale/locale_en-US.ini
routers/web/repo/setting.go
services/forms/repo_form.go
templates/repo/settings/options.tmpl

index f3da8dd5397157b3d7f6dff206cf53f4e02f4001..3495afe859d0b363e1acabaaeef7b8db27e312fb 100644 (file)
@@ -1870,6 +1870,7 @@ settings.pulls.allow_manual_merge = Enable Mark PR as manually merged
 settings.pulls.enable_autodetect_manual_merge = Enable autodetect manual merge (Note: In some special cases, misjudgments can occur)
 settings.pulls.allow_rebase_update = Enable updating pull request branch by rebase
 settings.pulls.default_delete_branch_after_merge = Delete pull request branch after merge by default
+settings.releases_desc = Enable Repository Releases
 settings.packages_desc = Enable Repository Packages Registry
 settings.projects_desc = Enable Repository Projects
 settings.actions_desc = Enable Repository Actions
index d2d15537ac79375caa8f3369d90a327fd8a5e61e..73887195e697bab5ee8a631eb6d82728374c25e0 100644 (file)
@@ -488,6 +488,15 @@ func SettingsPost(ctx *context.Context) {
                        deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeProjects)
                }
 
+               if form.EnableReleases && !unit_model.TypeReleases.UnitGlobalDisabled() {
+                       units = append(units, repo_model.RepoUnit{
+                               RepoID: repo.ID,
+                               Type:   unit_model.TypeReleases,
+                       })
+               } else if !unit_model.TypeReleases.UnitGlobalDisabled() {
+                       deleteUnitTypes = append(deleteUnitTypes, unit_model.TypeReleases)
+               }
+
                if form.EnablePackages && !unit_model.TypePackages.UnitGlobalDisabled() {
                        units = append(units, repo_model.RepoUnit{
                                RepoID: repo.ID,
index c084e65600866dadb072005bb760e8364a64d2e1..436d79df68cb64c5e0ba2c8eefbad9c3d539971e 100644 (file)
@@ -146,6 +146,7 @@ type RepoSettingForm struct {
        ExternalTrackerRegexpPattern          string
        EnableCloseIssuesViaCommitInAnyBranch bool
        EnableProjects                        bool
+       EnableReleases                        bool
        EnablePackages                        bool
        EnablePulls                           bool
        EnableActions                         bool
index 5b7b9ec5f8d65d4d9789fc83f2402447c1f8d54c..0383364279da84e5f225a5a534a53e22e483c45c 100644 (file)
                                        </div>
                                </div>
 
+                               {{$isReleasesEnabled := .Repository.UnitEnabled $.Context $.UnitTypeReleases}}
+                               <div class="inline field">
+                                       <label>{{.locale.Tr "repo.releases"}}</label>
+                                       {{if .UnitTypeReleases.UnitGlobalDisabled}}
+                                       <div class="ui checkbox tooltip disabled" data-content="{{.locale.Tr "repo.unit_disabled"}}">
+                                       {{else}}
+                                       <div class="ui checkbox">
+                                       {{end}}
+                                               <input class="enable-system" name="enable_releases" type="checkbox" {{if $isReleasesEnabled}}checked{{end}}>
+                                               <label>{{.locale.Tr "repo.settings.releases_desc"}}</label>
+                                       </div>
+                               </div>
+
                                {{$isPackagesEnabled := .Repository.UnitEnabled $.Context $.UnitTypePackages}}
                                <div class="inline field">
                                        <label>{{.locale.Tr "repo.packages"}}</label>