mirror of
				https://github.com/go-gitea/gitea.git
				synced 2025-10-31 21:28:11 +09:00 
			
		
		
		
	Show always repo count in header (#26842)
A few pages don't load the repo count of an user/org, so it is not shown in the header. This happens mostly on org pages, but the package settings applies to the user page as well. Before:  After:  Seen on #26826 Regression of #25928
This commit is contained in:
		| @@ -13,6 +13,7 @@ import ( | |||||||
| 	"code.gitea.io/gitea/modules/context" | 	"code.gitea.io/gitea/modules/context" | ||||||
| 	"code.gitea.io/gitea/modules/log" | 	"code.gitea.io/gitea/modules/log" | ||||||
| 	"code.gitea.io/gitea/modules/setting" | 	"code.gitea.io/gitea/modules/setting" | ||||||
|  | 	shared_user "code.gitea.io/gitea/routers/web/shared/user" | ||||||
| ) | ) | ||||||
|  |  | ||||||
| const ( | const ( | ||||||
| @@ -52,6 +53,12 @@ func Members(ctx *context.Context) { | |||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|  | 	err = shared_user.LoadHeaderCount(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	pager := context.NewPagination(int(total), setting.UI.MembersPagingNum, page, 5) | 	pager := context.NewPagination(int(total), setting.UI.MembersPagingNum, page, 5) | ||||||
| 	opts.ListOptions.Page = page | 	opts.ListOptions.Page = page | ||||||
| 	opts.ListOptions.PageSize = setting.UI.MembersPagingNum | 	opts.ListOptions.PageSize = setting.UI.MembersPagingNum | ||||||
|   | |||||||
| @@ -20,6 +20,7 @@ import ( | |||||||
| 	repo_module "code.gitea.io/gitea/modules/repository" | 	repo_module "code.gitea.io/gitea/modules/repository" | ||||||
| 	"code.gitea.io/gitea/modules/setting" | 	"code.gitea.io/gitea/modules/setting" | ||||||
| 	"code.gitea.io/gitea/modules/web" | 	"code.gitea.io/gitea/modules/web" | ||||||
|  | 	shared_user "code.gitea.io/gitea/routers/web/shared/user" | ||||||
| 	user_setting "code.gitea.io/gitea/routers/web/user/setting" | 	user_setting "code.gitea.io/gitea/routers/web/user/setting" | ||||||
| 	"code.gitea.io/gitea/services/forms" | 	"code.gitea.io/gitea/services/forms" | ||||||
| 	org_service "code.gitea.io/gitea/services/org" | 	org_service "code.gitea.io/gitea/services/org" | ||||||
| @@ -45,6 +46,14 @@ func Settings(ctx *context.Context) { | |||||||
| 	ctx.Data["PageIsSettingsOptions"] = true | 	ctx.Data["PageIsSettingsOptions"] = true | ||||||
| 	ctx.Data["CurrentVisibility"] = ctx.Org.Organization.Visibility | 	ctx.Data["CurrentVisibility"] = ctx.Org.Organization.Visibility | ||||||
| 	ctx.Data["RepoAdminChangeTeamAccess"] = ctx.Org.Organization.RepoAdminChangeTeamAccess | 	ctx.Data["RepoAdminChangeTeamAccess"] = ctx.Org.Organization.RepoAdminChangeTeamAccess | ||||||
|  | 	ctx.Data["ContextUser"] = ctx.ContextUser | ||||||
|  |  | ||||||
|  | 	err := shared_user.LoadHeaderCount(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	ctx.HTML(http.StatusOK, tplSettingsOptions) | 	ctx.HTML(http.StatusOK, tplSettingsOptions) | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -188,6 +197,12 @@ func SettingsDelete(ctx *context.Context) { | |||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|  | 	err := shared_user.LoadHeaderCount(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	ctx.HTML(http.StatusOK, tplSettingsDelete) | 	ctx.HTML(http.StatusOK, tplSettingsDelete) | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -206,6 +221,12 @@ func Webhooks(ctx *context.Context) { | |||||||
| 		return | 		return | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|  | 	err = shared_user.LoadHeaderCount(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	ctx.Data["Webhooks"] = ws | 	ctx.Data["Webhooks"] = ws | ||||||
| 	ctx.HTML(http.StatusOK, tplSettingsHooks) | 	ctx.HTML(http.StatusOK, tplSettingsHooks) | ||||||
| } | } | ||||||
| @@ -227,5 +248,12 @@ func Labels(ctx *context.Context) { | |||||||
| 	ctx.Data["PageIsOrgSettings"] = true | 	ctx.Data["PageIsOrgSettings"] = true | ||||||
| 	ctx.Data["PageIsOrgSettingsLabels"] = true | 	ctx.Data["PageIsOrgSettingsLabels"] = true | ||||||
| 	ctx.Data["LabelTemplateFiles"] = repo_module.LabelTemplateFiles | 	ctx.Data["LabelTemplateFiles"] = repo_module.LabelTemplateFiles | ||||||
|  |  | ||||||
|  | 	err := shared_user.LoadHeaderCount(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	ctx.HTML(http.StatusOK, tplSettingsLabels) | 	ctx.HTML(http.StatusOK, tplSettingsLabels) | ||||||
| } | } | ||||||
|   | |||||||
| @@ -11,6 +11,7 @@ import ( | |||||||
| 	"code.gitea.io/gitea/modules/base" | 	"code.gitea.io/gitea/modules/base" | ||||||
| 	"code.gitea.io/gitea/modules/context" | 	"code.gitea.io/gitea/modules/context" | ||||||
| 	"code.gitea.io/gitea/modules/setting" | 	"code.gitea.io/gitea/modules/setting" | ||||||
|  | 	shared_user "code.gitea.io/gitea/routers/web/shared/user" | ||||||
| 	user_setting "code.gitea.io/gitea/routers/web/user/setting" | 	user_setting "code.gitea.io/gitea/routers/web/user/setting" | ||||||
| ) | ) | ||||||
|  |  | ||||||
| @@ -41,6 +42,12 @@ func Applications(ctx *context.Context) { | |||||||
| 	} | 	} | ||||||
| 	ctx.Data["Applications"] = apps | 	ctx.Data["Applications"] = apps | ||||||
|  |  | ||||||
|  | 	err = shared_user.LoadHeaderCount(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	ctx.HTML(http.StatusOK, tplSettingsApplications) | 	ctx.HTML(http.StatusOK, tplSettingsApplications) | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -11,6 +11,7 @@ import ( | |||||||
| 	"code.gitea.io/gitea/modules/context" | 	"code.gitea.io/gitea/modules/context" | ||||||
| 	"code.gitea.io/gitea/modules/setting" | 	"code.gitea.io/gitea/modules/setting" | ||||||
| 	shared "code.gitea.io/gitea/routers/web/shared/packages" | 	shared "code.gitea.io/gitea/routers/web/shared/packages" | ||||||
|  | 	shared_user "code.gitea.io/gitea/routers/web/shared/user" | ||||||
| ) | ) | ||||||
|  |  | ||||||
| const ( | const ( | ||||||
| @@ -24,6 +25,12 @@ func Packages(ctx *context.Context) { | |||||||
| 	ctx.Data["PageIsOrgSettings"] = true | 	ctx.Data["PageIsOrgSettings"] = true | ||||||
| 	ctx.Data["PageIsSettingsPackages"] = true | 	ctx.Data["PageIsSettingsPackages"] = true | ||||||
|  |  | ||||||
|  | 	err := shared_user.LoadHeaderCount(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	shared.SetPackagesContext(ctx, ctx.ContextUser) | 	shared.SetPackagesContext(ctx, ctx.ContextUser) | ||||||
|  |  | ||||||
| 	ctx.HTML(http.StatusOK, tplSettingsPackages) | 	ctx.HTML(http.StatusOK, tplSettingsPackages) | ||||||
| @@ -34,6 +41,12 @@ func PackagesRuleAdd(ctx *context.Context) { | |||||||
| 	ctx.Data["PageIsOrgSettings"] = true | 	ctx.Data["PageIsOrgSettings"] = true | ||||||
| 	ctx.Data["PageIsSettingsPackages"] = true | 	ctx.Data["PageIsSettingsPackages"] = true | ||||||
|  |  | ||||||
|  | 	err := shared_user.LoadHeaderCount(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	shared.SetRuleAddContext(ctx) | 	shared.SetRuleAddContext(ctx) | ||||||
|  |  | ||||||
| 	ctx.HTML(http.StatusOK, tplSettingsPackagesRuleEdit) | 	ctx.HTML(http.StatusOK, tplSettingsPackagesRuleEdit) | ||||||
| @@ -44,6 +57,12 @@ func PackagesRuleEdit(ctx *context.Context) { | |||||||
| 	ctx.Data["PageIsOrgSettings"] = true | 	ctx.Data["PageIsOrgSettings"] = true | ||||||
| 	ctx.Data["PageIsSettingsPackages"] = true | 	ctx.Data["PageIsSettingsPackages"] = true | ||||||
|  |  | ||||||
|  | 	err := shared_user.LoadHeaderCount(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	shared.SetRuleEditContext(ctx, ctx.ContextUser) | 	shared.SetRuleEditContext(ctx, ctx.ContextUser) | ||||||
|  |  | ||||||
| 	ctx.HTML(http.StatusOK, tplSettingsPackagesRuleEdit) | 	ctx.HTML(http.StatusOK, tplSettingsPackagesRuleEdit) | ||||||
| @@ -80,6 +99,12 @@ func PackagesRulePreview(ctx *context.Context) { | |||||||
| 	ctx.Data["PageIsOrgSettings"] = true | 	ctx.Data["PageIsOrgSettings"] = true | ||||||
| 	ctx.Data["PageIsSettingsPackages"] = true | 	ctx.Data["PageIsSettingsPackages"] = true | ||||||
|  |  | ||||||
|  | 	err := shared_user.LoadHeaderCount(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	shared.SetRulePreviewContext(ctx, ctx.ContextUser) | 	shared.SetRulePreviewContext(ctx, ctx.ContextUser) | ||||||
|  |  | ||||||
| 	ctx.HTML(http.StatusOK, tplSettingsPackagesRulePreview) | 	ctx.HTML(http.StatusOK, tplSettingsPackagesRulePreview) | ||||||
|   | |||||||
| @@ -25,6 +25,7 @@ import ( | |||||||
| 	"code.gitea.io/gitea/modules/setting" | 	"code.gitea.io/gitea/modules/setting" | ||||||
| 	"code.gitea.io/gitea/modules/web" | 	"code.gitea.io/gitea/modules/web" | ||||||
| 	"code.gitea.io/gitea/routers/utils" | 	"code.gitea.io/gitea/routers/utils" | ||||||
|  | 	shared_user "code.gitea.io/gitea/routers/web/shared/user" | ||||||
| 	"code.gitea.io/gitea/services/convert" | 	"code.gitea.io/gitea/services/convert" | ||||||
| 	"code.gitea.io/gitea/services/forms" | 	"code.gitea.io/gitea/services/forms" | ||||||
| 	org_service "code.gitea.io/gitea/services/org" | 	org_service "code.gitea.io/gitea/services/org" | ||||||
| @@ -57,6 +58,12 @@ func Teams(ctx *context.Context) { | |||||||
| 	} | 	} | ||||||
| 	ctx.Data["Teams"] = ctx.Org.Teams | 	ctx.Data["Teams"] = ctx.Org.Teams | ||||||
|  |  | ||||||
|  | 	err := shared_user.LoadHeaderCount(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	ctx.HTML(http.StatusOK, tplTeams) | 	ctx.HTML(http.StatusOK, tplTeams) | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -390,6 +390,12 @@ func PackageSettings(ctx *context.Context) { | |||||||
| 	ctx.Data["Repos"] = repos | 	ctx.Data["Repos"] = repos | ||||||
| 	ctx.Data["CanWritePackages"] = ctx.Package.AccessMode >= perm.AccessModeWrite || ctx.IsUserSiteAdmin() | 	ctx.Data["CanWritePackages"] = ctx.Package.AccessMode >= perm.AccessModeWrite || ctx.IsUserSiteAdmin() | ||||||
|  |  | ||||||
|  | 	err := shared_user.LoadHeaderCount(ctx) | ||||||
|  | 	if err != nil { | ||||||
|  | 		ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 		return | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	ctx.HTML(http.StatusOK, tplPackagesSettings) | 	ctx.HTML(http.StatusOK, tplPackagesSettings) | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
| @@ -12,6 +12,7 @@ import ( | |||||||
| 	"code.gitea.io/gitea/modules/context" | 	"code.gitea.io/gitea/modules/context" | ||||||
| 	"code.gitea.io/gitea/modules/util" | 	"code.gitea.io/gitea/modules/util" | ||||||
| 	"code.gitea.io/gitea/modules/web" | 	"code.gitea.io/gitea/modules/web" | ||||||
|  | 	shared_user "code.gitea.io/gitea/routers/web/shared/user" | ||||||
| 	"code.gitea.io/gitea/services/forms" | 	"code.gitea.io/gitea/services/forms" | ||||||
| ) | ) | ||||||
|  |  | ||||||
| @@ -25,6 +26,15 @@ type OAuth2CommonHandlers struct { | |||||||
| func (oa *OAuth2CommonHandlers) renderEditPage(ctx *context.Context) { | func (oa *OAuth2CommonHandlers) renderEditPage(ctx *context.Context) { | ||||||
| 	app := ctx.Data["App"].(*auth.OAuth2Application) | 	app := ctx.Data["App"].(*auth.OAuth2Application) | ||||||
| 	ctx.Data["FormActionPath"] = fmt.Sprintf("%s/%d", oa.BasePathEditPrefix, app.ID) | 	ctx.Data["FormActionPath"] = fmt.Sprintf("%s/%d", oa.BasePathEditPrefix, app.ID) | ||||||
|  |  | ||||||
|  | 	if ctx.ContextUser.IsOrganization() { | ||||||
|  | 		err := shared_user.LoadHeaderCount(ctx) | ||||||
|  | 		if err != nil { | ||||||
|  | 			ctx.ServerError("LoadHeaderCount", err) | ||||||
|  | 			return | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	ctx.HTML(http.StatusOK, oa.TplAppEdit) | 	ctx.HTML(http.StatusOK, oa.TplAppEdit) | ||||||
| } | } | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user