]> source.dussan.org Git - gitea.git/commitdiff
Added issue link rendering in commit messages
authordennis-smurf <dnnssmth8@netscape.net>
Fri, 5 Dec 2014 10:02:52 +0000 (11:02 +0100)
committerdennis-smurf <dnnssmth8@netscape.net>
Fri, 5 Dec 2014 10:02:52 +0000 (11:02 +0100)
routers/repo/commit.go
routers/repo/view.go
templates/repo/commits_table.tmpl
templates/repo/diff.tmpl
templates/repo/view_list.tmpl

index 1174e62661881e9b5ebcf0fc797812f7aa04851a..82be6881fa3710877f9b69dea78673c990674ce8 100644 (file)
@@ -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 {
index 162279acd1b01e66a81419c4f703e626cd37fb37..073eb5d74ebf84304405ec51b78f4726bef8051e 100644 (file)
@@ -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 {
index eb819e387fb453e1401f9d936e94a5e56c5eef80..bd3777b46e52846ea93db303bbc08a5a06673563 100644 (file)
@@ -32,7 +32,7 @@
                     {{end}}
                 </td>
                 <td class="sha"><a rel="nofollow" class="label label-green" href="{{AppSubUrl}}/{{$username}}/{{$reponame}}/commit/{{.Id}} ">{{SubStr .Id.String 0 10}} </a></td>
-                <td class="message"><span class="text-truncate">{{.Summary}}</span></td>
+                <td class="message"><span class="text-truncate">{{Str2html .Summary}}</span></td>
                 <td class="date">{{TimeSince .Author.When $.Lang}}</td>
             </tr>
             {{end}}
index 61164c0de0c653a7ed760956a9525dcb082602c1..2726b94d9d389c8b9ca4a4c14e55661d64f95151 100644 (file)
@@ -17,7 +17,7 @@
         <div class="panel panel-info panel-radius diff-head-box">
             <div class="panel-header">
                 <a class="pull-right btn btn-blue btn-header btn-medium btn-radius" rel="nofollow" href="{{.SourcePath}}">{{.i18n.Tr "repo.diff.browse_source"}}</a>
-                <h4 class="commit-message">{{.Commit.Message}}</h4>
+                <h4 class="commit-message">{{Str2html .Commit.Message}}</h4>
             </div>
             <div class="panel-body">
                 <span class="pull-right">
index d516eac94cb573d255da512146042e7bc15cb95a..8160c17b83697541ce487b31d4e7c74467c7d86e 100644 (file)
@@ -14,7 +14,7 @@
             </span>
             <span class="last-commit"><a href="{{.RepoLink}}/commit/{{.LastCommit.Id}}" rel="nofollow">
                 <strong>{{ShortSha .LastCommit.Id.String}}</strong></a>
-                <span class="text-truncate">{{.LastCommit.Summary}}</span>
+                <span class="text-truncate">{{Str2html .LastCommit.Summary}}</span>
             </span>
             <span class="age right">{{TimeSince .LastCommit.Author.When $.Lang}}</span>
         </th>
@@ -25,6 +25,7 @@
         <tr class="has-parent">
             <td class="icon"></td>
             <td class="name"><a href="{{EscapePound .BranchLink}}{{.ParentPath}}">..</a></td>
+            <th class="sha">SHA1</th>
             <td class="msg"></td>
             <td class="age"></td>
         </tr>
                     <a href="{{EscapePound $.BranchLink}}/{{$.TreePath}}{{$entry.Name}}" class="text-truncate">{{$entry.Name}}</a>
                 </td>
                 {{end}}
-                <td class="msg">
-                    <a class="text-truncate" href="{{AppSubUrl}}/{{$.Username}}/{{$.Reponame}}/commit/{{$commit.Id}}" rel="nofollow">{{$commit.Summary}}</a>
+                <td class="sha">
+                  <a rel="nofollow" class="label label-green" href="{{AppSubUrl}}/{{$.Username}}/{{$.Reponame}}/commit/{{$commit.Id}} ">{{SubStr $commit.Id.String 0 10}} </a>
+                </td>
+                <td class="message">
+                  <span class="text-truncate">{{Str2html $commit.Summary}}</span>
                 </td>
                 <td class="age">{{TimeSince $commit.Committer.When $.Lang}}</td>
             </tr>