From bc71cc4fc0fa7137d17518ff09d40ef9ca89e95d Mon Sep 17 00:00:00 2001 From: Zettat123 Date: Fri, 22 Nov 2024 16:03:54 +0800 Subject: [PATCH] improvements for public repos --- options/locale/locale_en-US.ini | 1 + routers/web/repo/setting/actions.go | 18 +++++++++++------- templates/repo/settings/actions_general.tmpl | 10 ++++++++-- 3 files changed, 20 insertions(+), 9 deletions(-) diff --git a/options/locale/locale_en-US.ini b/options/locale/locale_en-US.ini index 5fb9a8d53a0..82ac38ea00d 100644 --- a/options/locale/locale_en-US.ini +++ b/options/locale/locale_en-US.ini @@ -3758,6 +3758,7 @@ general = General general.settings = Actions General Settings general.actions_accessible_from_other_repositories = Accessible from repositories owned by '%s' general.actions_accessible_from_other_repositories_desc = Workflows in other repositories that are owned by the user '%s' can access the actions and reusable workflows in this repository. Access is allowed only from private repositories. +general.actions_always_accessible_desc = The actions and workflows of a public repository are always accessible to other repositories. [projects] deleted.display_name = Deleted Project diff --git a/routers/web/repo/setting/actions.go b/routers/web/repo/setting/actions.go index 2dea6c0f7c9..b8afbbc314f 100644 --- a/routers/web/repo/setting/actions.go +++ b/routers/web/repo/setting/actions.go @@ -19,14 +19,18 @@ func ActionsGeneralSettings(ctx *context.Context) { ctx.Data["PageType"] = "general" ctx.Data["PageIsActionsSettingsGeneral"] = true - actionsUnit, err := ctx.Repo.Repository.GetUnit(ctx, unit_model.TypeActions) - if err != nil { - ctx.ServerError("GetUnit", err) - return + accessbleFromOtherRepos := false + if !ctx.Repo.Repository.IsPrivate { + accessbleFromOtherRepos = true + } else { + actionsUnit, err := ctx.Repo.Repository.GetUnit(ctx, unit_model.TypeActions) + if err != nil { + ctx.ServerError("GetUnit", err) + return + } + accessbleFromOtherRepos = actionsUnit.ActionsConfig().AccessbleFromOtherRepos } - actionsCfg := actionsUnit.ActionsConfig() - - ctx.Data["AccessibleFromOtherRepos"] = actionsCfg.AccessbleFromOtherRepos + ctx.Data["AccessibleFromOtherRepos"] = accessbleFromOtherRepos ctx.HTML(http.StatusOK, tplRepoActionsGeneralSettings) } diff --git a/templates/repo/settings/actions_general.tmpl b/templates/repo/settings/actions_general.tmpl index 3ff08871322..071d386b319 100644 --- a/templates/repo/settings/actions_general.tmpl +++ b/templates/repo/settings/actions_general.tmpl @@ -7,9 +7,15 @@ {{.CsrfTokenHtml}}
- + -

{{ctx.Locale.Tr "actions.general.actions_accessible_from_other_repositories_desc" .Owner.Name}}

+

+ {{if .Repository.IsPrivate}} + {{ctx.Locale.Tr "actions.general.actions_accessible_from_other_repositories_desc" .Owner.Name}} + {{else}} + {{ctx.Locale.Tr "actions.general.actions_always_accessible_desc"}} + {{end}} +