Skip to content

Commit 9a8fe96

Browse files
committed
Unified link creation.
1 parent 3d5bb3e commit 9a8fe96

File tree

11 files changed

+27
-24
lines changed

11 files changed

+27
-24
lines changed

models/user.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -302,7 +302,7 @@ func (u *User) CanImportLocal() bool {
302302
// DashboardLink returns the user dashboard page link.
303303
func (u *User) DashboardLink() string {
304304
if u.IsOrganization() {
305-
return setting.AppSubURL + "/org/" + u.Name + "/dashboard/"
305+
return u.OrganisationLink() + "/dashboard/"
306306
}
307307
return setting.AppSubURL + "/"
308308
}
@@ -317,6 +317,11 @@ func (u *User) HTMLURL() string {
317317
return setting.AppURL + u.Name
318318
}
319319

320+
// OrganisationLink returns the organization sub page link.
321+
func (u *User) OrganisationLink() string {
322+
return setting.AppSubURL + "/org/" + u.Name
323+
}
324+
320325
// GenerateEmailActivateCode generates an activate code based on user information and given e-mail.
321326
func (u *User) GenerateEmailActivateCode(email string) string {
322327
code := base.CreateTimeLimitCode(

modules/context/org.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ import (
99
"strings"
1010

1111
"code.gitea.io/gitea/models"
12-
"code.gitea.io/gitea/modules/setting"
1312
)
1413

1514
// Organization contains organization context
@@ -70,7 +69,7 @@ func HandleOrgAssignment(ctx *Context, args ...bool) {
7069

7170
// Force redirection when username is actually a user.
7271
if !org.IsOrganization() {
73-
ctx.Redirect(setting.AppSubURL + "/" + org.Name)
72+
ctx.Redirect(org.HomeLink())
7473
return
7574
}
7675

@@ -118,7 +117,7 @@ func HandleOrgAssignment(ctx *Context, args ...bool) {
118117
ctx.Data["IsOrganizationMember"] = ctx.Org.IsMember
119118
ctx.Data["CanCreateOrgRepo"] = ctx.Org.CanCreateOrgRepo
120119

121-
ctx.Org.OrgLink = setting.AppSubURL + "/org/" + org.Name
120+
ctx.Org.OrgLink = org.OrganisationLink()
122121
ctx.Data["OrgLink"] = ctx.Org.OrgLink
123122

124123
// Team.

routers/org/org.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,5 +75,5 @@ func CreatePost(ctx *context.Context) {
7575
}
7676
log.Trace("Organization created: %s", org.Name)
7777

78-
ctx.Redirect(setting.AppSubURL + "/org/" + form.OrgName + "/dashboard")
78+
ctx.Redirect(org.DashboardLink())
7979
}

routers/repo/issue_label.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@ import (
1111
"code.gitea.io/gitea/modules/base"
1212
"code.gitea.io/gitea/modules/context"
1313
"code.gitea.io/gitea/modules/log"
14-
"code.gitea.io/gitea/modules/setting"
1514
"code.gitea.io/gitea/modules/web"
1615
"code.gitea.io/gitea/services/forms"
1716
issue_service "code.gitea.io/gitea/services/issue"
@@ -88,7 +87,7 @@ func RetrieveLabels(ctx *context.Context) {
8887
ctx.ServerError("org.IsOwnedBy", err)
8988
return
9089
}
91-
ctx.Org.OrgLink = setting.AppSubURL + "/org/" + org.LowerName
90+
ctx.Org.OrgLink = org.OrganisationLink()
9291
ctx.Data["IsOrganizationOwner"] = ctx.Org.IsOwner
9392
ctx.Data["OrganizationLink"] = ctx.Org.OrgLink
9493
}

routers/repo/migrate.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ func MigratePost(ctx *context.Context) {
234234

235235
err = task.MigrateRepository(ctx.User, ctxUser, opts)
236236
if err == nil {
237-
ctx.Redirect(setting.AppSubURL + "/" + ctxUser.Name + "/" + opts.RepoName)
237+
ctx.Redirect(ctxUser.HomeLink() + "/" + opts.RepoName)
238238
return
239239
}
240240

routers/repo/pull.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ func ForkPost(ctx *context.Context) {
201201
}
202202
repo, has := models.HasForkedRepo(ctxUser.ID, traverseParentRepo.ID)
203203
if has {
204-
ctx.Redirect(setting.AppSubURL + "/" + ctxUser.Name + "/" + repo.Name)
204+
ctx.Redirect(ctxUser.HomeLink() + "/" + repo.Name)
205205
return
206206
}
207207
if !traverseParentRepo.IsFork {
@@ -243,7 +243,7 @@ func ForkPost(ctx *context.Context) {
243243
}
244244

245245
log.Trace("Repository forked[%d]: %s/%s", forkRepo.ID, ctxUser.Name, repo.Name)
246-
ctx.Redirect(setting.AppSubURL + "/" + ctxUser.Name + "/" + repo.Name)
246+
ctx.Redirect(ctxUser.HomeLink() + "/" + repo.Name)
247247
}
248248

249249
func checkPullInfo(ctx *context.Context) *models.Issue {

routers/repo/repo.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,7 @@ func CreatePost(ctx *context.Context) {
240240
repo, err = repo_service.GenerateRepository(ctx.User, ctxUser, templateRepo, opts)
241241
if err == nil {
242242
log.Trace("Repository generated [%d]: %s/%s", repo.ID, ctxUser.Name, repo.Name)
243-
ctx.Redirect(setting.AppSubURL + "/" + ctxUser.Name + "/" + repo.Name)
243+
ctx.Redirect(ctxUser.HomeLink() + "/" + repo.Name)
244244
return
245245
}
246246
} else {
@@ -259,7 +259,7 @@ func CreatePost(ctx *context.Context) {
259259
})
260260
if err == nil {
261261
log.Trace("Repository created [%d]: %s/%s", repo.ID, ctxUser.Name, repo.Name)
262-
ctx.Redirect(setting.AppSubURL + "/" + ctxUser.Name + "/" + repo.Name)
262+
ctx.Redirect(ctxUser.HomeLink() + "/" + repo.Name)
263263
return
264264
}
265265
}

routers/repo/setting.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -500,7 +500,7 @@ func SettingsPost(ctx *context.Context) {
500500

501501
log.Trace("Repository transfer process was started: %s/%s -> %s", ctx.Repo.Owner.Name, repo.Name, newOwner)
502502
ctx.Flash.Success(ctx.Tr("repo.settings.transfer_started", newOwner.DisplayName()))
503-
ctx.Redirect(setting.AppSubURL + "/" + ctx.Repo.Owner.Name + "/" + repo.Name + "/settings")
503+
ctx.Redirect(ctx.Repo.Owner.HomeLink() + "/" + repo.Name + "/settings")
504504

505505
case "cancel_transfer":
506506
if !ctx.Repo.IsOwner() {
@@ -512,7 +512,7 @@ func SettingsPost(ctx *context.Context) {
512512
if err != nil {
513513
if models.IsErrNoPendingTransfer(err) {
514514
ctx.Flash.Error("repo.settings.transfer_abort_invalid")
515-
ctx.Redirect(setting.AppSubURL + "/" + ctx.User.Name + "/" + repo.Name + "/settings")
515+
ctx.Redirect(ctx.User.HomeLink() + "/" + repo.Name + "/settings")
516516
} else {
517517
ctx.ServerError("GetPendingRepositoryTransfer", err)
518518
}
@@ -532,7 +532,7 @@ func SettingsPost(ctx *context.Context) {
532532

533533
log.Trace("Repository transfer process was cancelled: %s/%s ", ctx.Repo.Owner.Name, repo.Name)
534534
ctx.Flash.Success(ctx.Tr("repo.settings.transfer_abort_success", repoTransfer.Recipient.Name))
535-
ctx.Redirect(setting.AppSubURL + "/" + ctx.Repo.Owner.Name + "/" + repo.Name + "/settings")
535+
ctx.Redirect(ctx.Repo.Owner.HomeLink() + "/" + repo.Name + "/settings")
536536

537537
case "delete":
538538
if !ctx.Repo.IsOwner() {

templates/admin/org/list.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@
4545
<td>{{.NumMembers}}</td>
4646
<td>{{.NumRepos}}</td>
4747
<td><span title="{{.CreatedUnix.FormatLong}}">{{.CreatedUnix.FormatShort}}</span></td>
48-
<td><a href="{{AppSubUrl}}/org/{{.Name}}/settings">{{svg "octicon-pencil"}}</a></td>
48+
<td><a href="{{.OrganisationLink}}/settings">{{svg "octicon-pencil"}}</a></td>
4949
</tr>
5050
{{end}}
5151
</tbody>

templates/user/dashboard/navbar.tmpl

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323
<span class="truncated-item-name">{{.SignedUser.ShortName 40}}</span>
2424
</a>
2525
{{range .Orgs}}
26-
<a class="{{if eq $.ContextUser.ID .ID}}active selected{{end}} item truncated-item-container" title="{{.Name}}" href="{{AppSubUrl}}/org/{{.Name}}/{{if $.PageIsIssues}}issues{{else if $.PageIsPulls}}pulls{{else if $.PageIsMilestonesDashboard}}milestones{{else}}dashboard{{end}}">
26+
<a class="{{if eq $.ContextUser.ID .ID}}active selected{{end}} item truncated-item-container" title="{{.Name}}" href="{{.OrganisationLink}}/{{if $.PageIsIssues}}issues{{else if $.PageIsPulls}}pulls{{else if $.PageIsMilestonesDashboard}}milestones{{else}}dashboard{{end}}">
2727
{{avatar .}}
2828
<span class="truncated-item-name">{{.ShortName 40}}</span>
2929
<span class="org-visibility">
@@ -58,12 +58,12 @@
5858
{{.i18n.Tr "home.filter_by_team_repositories"}}
5959
</div>
6060
<div class="scrolling menu items">
61-
<a class="{{if not $.Team}}active selected{{end}} item" title="{{.i18n.Tr "all"}}" href="{{AppSubUrl}}/org/{{$.Org.Name}}/{{if $.PageIsIssues}}issues{{else if $.PageIsPulls}}pulls{{else if $.PageIsMilestonesDashboard}}milestones{{else}}dashboard{{end}}">
61+
<a class="{{if not $.Team}}active selected{{end}} item" title="{{.i18n.Tr "all"}}" href="{{$.Org.OrganisationLink}}/{{if $.PageIsIssues}}issues{{else if $.PageIsPulls}}pulls{{else if $.PageIsMilestonesDashboard}}milestones{{else}}dashboard{{end}}">
6262
{{.i18n.Tr "all"}}
6363
</a>
6464
{{range .Org.Teams}}
6565
{{if not .IncludesAllRepositories}}
66-
<a class="{{if $.Team}}{{if eq $.Team.ID .ID}}active selected{{end}}{{end}} item" title="{{.Name}}" href="{{AppSubUrl}}/org/{{$.Org.Name}}/{{if $.PageIsIssues}}issues{{else if $.PageIsPulls}}pulls{{else if $.PageIsMilestonesDashboard}}milestones{{else}}dashboard{{end}}/{{.Name}}">
66+
<a class="{{if $.Team}}{{if eq $.Team.ID .ID}}active selected{{end}}{{end}} item" title="{{.Name}}" href="{{$.Org.OrganisationLink}}/{{if $.PageIsIssues}}issues{{else if $.PageIsPulls}}pulls{{else if $.PageIsMilestonesDashboard}}milestones{{else}}dashboard{{end}}/{{.Name}}">
6767
{{.Name}}
6868
</a>
6969
{{end}}
@@ -76,21 +76,21 @@
7676

7777
{{if .ContextUser.IsOrganization}}
7878
<div class="right stackable menu">
79-
<a class="{{if .PageIsNews}}active{{end}} item" style="margin-left: auto" href="{{AppSubUrl}}/org/{{.ContextUser.Name}}/dashboard{{if .Team}}/{{.Team.Name}}{{end}}">
79+
<a class="{{if .PageIsNews}}active{{end}} item" style="margin-left: auto" href="{{.ContextUser.DashboardLink}}{{if .Team}}/{{.Team.Name}}{{end}}">
8080
{{svg "octicon-rss"}}&nbsp;{{.i18n.Tr "activities"}}
8181
</a>
8282
{{if not .UnitIssuesGlobalDisabled}}
83-
<a class="{{if .PageIsIssues}}active{{end}} item" href="{{AppSubUrl}}/org/{{.ContextUser.Name}}/issues{{if .Team}}/{{.Team.Name}}{{end}}">
83+
<a class="{{if .PageIsIssues}}active{{end}} item" href="{{.ContextUser.OrganisationLink}}/issues{{if .Team}}/{{.Team.Name}}{{end}}">
8484
{{svg "octicon-issue-opened"}}&nbsp;{{.i18n.Tr "issues"}}
8585
</a>
8686
{{end}}
8787
{{if not .UnitPullsGlobalDisabled}}
88-
<a class="{{if .PageIsPulls}}active{{end}} item" href="{{AppSubUrl}}/org/{{.ContextUser.Name}}/pulls{{if .Team}}/{{.Team.Name}}{{end}}">
88+
<a class="{{if .PageIsPulls}}active{{end}} item" href="{{.ContextUser.OrganisationLink}}/pulls{{if .Team}}/{{.Team.Name}}{{end}}">
8989
{{svg "octicon-git-pull-request"}}&nbsp;{{.i18n.Tr "pull_requests"}}
9090
</a>
9191
{{end}}
9292
{{if and .ShowMilestonesDashboardPage (not (and .UnitIssuesGlobalDisabled .UnitPullsGlobalDisabled))}}
93-
<a class="{{if .PageIsMilestonesDashboard}}active{{end}} item" href="{{AppSubUrl}}/org/{{.ContextUser.Name}}/milestones{{if .Team}}/{{.Team.Name}}{{end}}">
93+
<a class="{{if .PageIsMilestonesDashboard}}active{{end}} item" href="{{.ContextUser.OrganisationLink}}/milestones{{if .Team}}/{{.Team.Name}}{{end}}">
9494
{{svg "octicon-milestone"}}&nbsp;{{.i18n.Tr "milestones"}}
9595
</a>
9696
{{end}}

templates/user/settings/organization.tmpl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
{{range .Orgs}}
1818
<div class="item">
1919
<div class="right floated content">
20-
<form method="post" action="{{AppSubUrl}}/org/{{.Name}}/members/action/leave">
20+
<form method="post" action="{{.OrganisationLink}}/members/action/leave">
2121
{{$.CsrfTokenHtml}}
2222
<button type="submit" class="ui blue small button" name="uid" value="{{.ID}}">{{$.i18n.Tr "org.members.leave"}}</button>
2323
</form>

0 commit comments

Comments
 (0)