mirror of
https://codeberg.org/forgejo/forgejo.git
synced 2025-05-19 08:20:13 +00:00
Added issue link rendering in commit messages
This commit is contained in:
parent
e577f2fff3
commit
528c075ad6
5 changed files with 26 additions and 6 deletions
|
@ -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 {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue