Skip to content

Commit 0b12abc

Browse files
authored
Add missing Tabs on organisation/package view (Frontport #20539) (#20540)
hotfix #20106
1 parent ff9b6fa commit 0b12abc

File tree

2 files changed

+57
-7
lines changed

2 files changed

+57
-7
lines changed

routers/web/user/package.go

+16
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import (
88
"net/http"
99

1010
"code.gitea.io/gitea/models/db"
11+
org_model "code.gitea.io/gitea/models/organization"
1112
packages_model "code.gitea.io/gitea/models/packages"
1213
container_model "code.gitea.io/gitea/models/packages/container"
1314
"code.gitea.io/gitea/models/perm"
@@ -93,6 +94,21 @@ func ListPackages(ctx *context.Context) {
9394
ctx.Data["Total"] = total
9495
ctx.Data["RepositoryAccessMap"] = repositoryAccessMap
9596

97+
// TODO: context/org -> HandleOrgAssignment() can not be used
98+
if ctx.ContextUser.IsOrganization() {
99+
org := org_model.OrgFromUser(ctx.ContextUser)
100+
ctx.Data["Org"] = org
101+
ctx.Data["OrgLink"] = ctx.ContextUser.OrganisationLink()
102+
103+
if ctx.Doer != nil {
104+
ctx.Data["IsOrganizationMember"], _ = org_model.IsOrganizationMember(ctx, org.ID, ctx.Doer.ID)
105+
ctx.Data["IsOrganizationOwner"], _ = org_model.IsOrganizationOwner(ctx, org.ID, ctx.Doer.ID)
106+
} else {
107+
ctx.Data["IsOrganizationMember"] = false
108+
ctx.Data["IsOrganizationOwner"] = false
109+
}
110+
}
111+
96112
pager := context.NewPagination(int(total), setting.UI.PackagesPagingNum, page, 5)
97113
pager.AddParam(ctx, "q", "Query")
98114
pager.AddParam(ctx, "type", "PackageType")

templates/user/overview/header.tmpl

+41-7
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,22 @@
11
<div class="header-wrapper">
2-
<div class="ui container">
3-
<div class="repo-header">
4-
<div class="repo-title-wrap df fc">
5-
<div class="repo-title">
6-
{{avatar .ContextUser 32}}
7-
<a href="{{.ContextUser.HTMLURL}}">{{.ContextUser.Name}}</a>
2+
<!-- TODO: make template org and user can share -->
3+
{{with .ContextUser}}
4+
<div class="ui container">
5+
<div class="ui vertically grid head">
6+
<div class="column">
7+
<div class="ui header">
8+
{{avatar . 100}}
9+
<span class="text thin grey"><a href="{{.HomeLink}}">{{.DisplayName}}</a></span>
10+
<span class="org-visibility">
11+
{{if .Visibility.IsLimited}}<div class="ui medium orange horizontal label">{{$.locale.Tr "org.settings.visibility.limited_shortname"}}</div>{{end}}
12+
{{if .Visibility.IsPrivate}}<div class="ui medium red horizontal label">{{$.locale.Tr "org.settings.visibility.private_shortname"}}</div>{{end}}
13+
</span>
14+
</div>
815
</div>
916
</div>
1017
</div>
11-
</div>
18+
{{end}}
19+
1220
<div class="ui tabs container">
1321
<div class="ui tabular stackable menu navbar">
1422
<a class="item" href="{{.ContextUser.HomeLink}}">
@@ -19,6 +27,32 @@
1927
{{svg "octicon-package"}} {{.locale.Tr "packages.title"}}
2028
</a>
2129
{{end}}
30+
31+
{{if .ContextUser.IsOrganization}}
32+
{{if .IsOrganizationMember}}
33+
<a class="item" href="{{$.OrgLink}}/members">
34+
{{svg "octicon-organization"}}&nbsp;{{$.locale.Tr "org.people"}}
35+
{{if .NumMembers}}
36+
<div class="ui primary label">{{.NumMembers}}</div>
37+
{{end}}
38+
</a>
39+
<a class="item" href="{{$.OrgLink}}/teams">
40+
{{svg "octicon-people"}}&nbsp;{{$.locale.Tr "org.teams"}}
41+
{{if .NumTeams}}
42+
<div class="ui black label">{{.NumTeams}}</div>
43+
{{end}}
44+
</a>
45+
{{end}}
46+
47+
{{if .IsOrganizationOwner}}
48+
<div class="right menu">
49+
<a class="item" href="{{.OrgLink}}/settings">
50+
{{svg "octicon-tools"}} {{.locale.Tr "repo.settings"}}
51+
</a>
52+
</div>
53+
{{end}}
54+
{{end}}
55+
2256
</div>
2357
</div>
2458
<div class="ui tabs divider"></div>

0 commit comments

Comments
 (0)