Fix #28052 Backport #28068 Before: ![image](https://github.com/go-gitea/gitea/assets/18380374/5f299983-4b38-4d68-ac0e-4be3c62c0558) ![image](https://github.com/go-gitea/gitea/assets/18380374/f0e12afd-483b-4882-80e9-0261beb3fe0c) After: ![image](https://github.com/go-gitea/gitea/assets/18380374/47cccb7b-bb35-4a7d-9c5b-83133be0323a) ![image](https://github.com/go-gitea/gitea/assets/18380374/77825c0c-4bf2-4762-83a2-1a5a173cc22d) Co-authored-by: yp05327 <576951401@qq.com>tags/v1.21.7
@@ -6,6 +6,7 @@ package user | |||
import ( | |||
"code.gitea.io/gitea/models/db" | |||
"code.gitea.io/gitea/models/organization" | |||
project_model "code.gitea.io/gitea/models/project" | |||
repo_model "code.gitea.io/gitea/models/repo" | |||
user_model "code.gitea.io/gitea/models/user" | |||
"code.gitea.io/gitea/modules/context" | |||
@@ -125,5 +126,21 @@ func LoadHeaderCount(ctx *context.Context) error { | |||
} | |||
ctx.Data["RepoCount"] = repoCount | |||
var projectType project_model.Type | |||
if ctx.ContextUser.IsOrganization() { | |||
projectType = project_model.TypeOrganization | |||
} else { | |||
projectType = project_model.TypeIndividual | |||
} | |||
projectCount, err := project_model.CountProjects(ctx, project_model.SearchOptions{ | |||
OwnerID: ctx.ContextUser.ID, | |||
IsClosed: util.OptionalBoolOf(false), | |||
Type: projectType, | |||
}) | |||
if err != nil { | |||
return err | |||
} | |||
ctx.Data["ProjectCount"] = projectCount | |||
return nil | |||
} |
@@ -9,6 +9,9 @@ | |||
{{if .CanReadProjects}} | |||
<a class="{{if .PageIsViewProjects}}active {{end}}item" href="{{$.Org.HomeLink}}/-/projects"> | |||
{{svg "octicon-project-symlink"}} {{ctx.Locale.Tr "user.projects"}} | |||
{{if .ProjectCount}} | |||
<div class="ui small label">{{.ProjectCount}}</div> | |||
{{end}} | |||
</a> | |||
{{end}} | |||
{{if and .IsPackageEnabled .CanReadPackages}} |
@@ -13,6 +13,9 @@ | |||
{{if or .ContextUser.IsIndividual (and .ContextUser.IsOrganization .CanReadProjects)}} | |||
<a href="{{.ContextUser.HomeLink}}/-/projects" class="{{if .PageIsViewProjects}}active {{end}}item"> | |||
{{svg "octicon-project-symlink"}} {{ctx.Locale.Tr "user.projects"}} | |||
{{if .ProjectCount}} | |||
<div class="ui small label">{{.ProjectCount}}</div> | |||
{{end}} | |||
</a> | |||
{{end}} | |||
{{if and .IsPackageEnabled (or .ContextUser.IsIndividual (and .ContextUser.IsOrganization .CanReadPackages))}} |