diff options
author | dennis-smurf <dnnssmth8@netscape.net> | 2014-12-05 11:02:52 +0100 |
---|---|---|
committer | dennis-smurf <dnnssmth8@netscape.net> | 2014-12-05 11:02:52 +0100 |
commit | 528c075ad668da4fbe9193e477c783cc76321503 (patch) | |
tree | 4fab007e796cca48938ca56571634765a10a557b /routers | |
parent | e577f2fff38957316a2b6d584cad9bc7abaf732b (diff) | |
download | gitea-528c075ad668da4fbe9193e477c783cc76321503.tar.gz gitea-528c075ad668da4fbe9193e477c783cc76321503.zip |
Added issue link rendering in commit messages
Diffstat (limited to 'routers')
-rw-r--r-- | routers/repo/commit.go | 17 | ||||
-rw-r--r-- | routers/repo/view.go | 1 |
2 files changed, 17 insertions, 1 deletions
diff --git a/routers/repo/commit.go b/routers/repo/commit.go index 1174e62661..82be6881fa 100644 --- a/routers/repo/commit.go +++ b/routers/repo/commit.go @@ -5,12 +5,14 @@ package repo import ( + "container/list" "path" "github.com/Unknwon/com" "github.com/gogits/gogs/models" "github.com/gogits/gogs/modules/base" + "github.com/gogits/gogs/modules/git" "github.com/gogits/gogs/modules/middleware" "github.com/gogits/gogs/modules/setting" ) @@ -72,6 +74,7 @@ func Commits(ctx *middleware.Context) { ctx.Handle(500, "CommitsByRange", err) return } + commits = RenderIssueLinks(commits, ctx.Repo.RepoLink) commits = models.ValidateCommitsWithEmails(commits) ctx.Data["Commits"] = commits @@ -83,6 +86,16 @@ func Commits(ctx *middleware.Context) { ctx.HTML(200, COMMITS) } +func RenderIssueLinks(oldCommits *list.List, repoLink string) *list.List { + newCommits := list.New() + for e := oldCommits.Front(); e != nil; e = e.Next() { + c := e.Value.(*git.Commit) + c.CommitMessage = string(base.RenderissueIndexPattern([]byte(c.CommitMessage), repoLink)) + newCommits.PushBack(c) + } + return newCommits +} + func SearchCommits(ctx *middleware.Context) { ctx.Data["IsSearchPage"] = true ctx.Data["IsRepoToolbarCommits"] = true @@ -110,6 +123,7 @@ func SearchCommits(ctx *middleware.Context) { ctx.Handle(500, "SearchCommits", err) return } + commits = RenderIssueLinks(commits, ctx.Repo.RepoLink) commits = models.ValidateCommitsWithEmails(commits) ctx.Data["Keyword"] = keyword @@ -171,6 +185,7 @@ func FileHistory(ctx *middleware.Context) { ctx.Handle(500, "repo.FileHistory(CommitsByRange)", err) return } + commits = RenderIssueLinks(commits, ctx.Repo.RepoLink) commits = models.ValidateCommitsWithEmails(commits) ctx.Data["Commits"] = commits @@ -191,7 +206,7 @@ func Diff(ctx *middleware.Context) { commitId := ctx.Repo.CommitId commit := ctx.Repo.Commit - + commit.CommitMessage = string(base.RenderissueIndexPattern([]byte(commit.CommitMessage), ctx.Repo.RepoLink)) diff, err := models.GetDiffCommit(models.RepoPath(userName, repoName), commitId, setting.MaxGitDiffLines) if err != nil { diff --git a/routers/repo/view.go b/routers/repo/view.go index 162279acd1..073eb5d74e 100644 --- a/routers/repo/view.go +++ b/routers/repo/view.go @@ -199,6 +199,7 @@ func Home(ctx *middleware.Context) { } lastCommit := ctx.Repo.Commit + lastCommit.CommitMessage = string(base.RenderissueIndexPattern([]byte(lastCommit.CommitMessage), ctx.Repo.RepoLink)) if len(treePath) > 0 { c, err := ctx.Repo.Commit.GetCommitOfRelPath(treePath) if err != nil { |