]> source.dussan.org Git - gitea.git/commitdiff
Add directory level commit message
authorUnknwon <joe2010xtmf@163.com>
Fri, 26 Sep 2014 12:55:13 +0000 (08:55 -0400)
committerUnknwon <joe2010xtmf@163.com>
Fri, 26 Sep 2014 12:55:13 +0000 (08:55 -0400)
gogs.go
models/user.go
routers/repo/commit.go
routers/repo/view.go
templates/.VERSION
templates/repo/view_list.tmpl

diff --git a/gogs.go b/gogs.go
index 2f5b24176e089a70ac2aed3731e664eca7491397..28b0feccb2695ab39f22adb5d199466d2c0f1165 100644 (file)
--- a/gogs.go
+++ b/gogs.go
@@ -17,7 +17,7 @@ import (
        "github.com/gogits/gogs/modules/setting"
 )
 
-const APP_VER = "0.5.4.0925 Beta"
+const APP_VER = "0.5.4.0926 Beta"
 
 func init() {
        runtime.GOMAXPROCS(runtime.NumCPU())
index f327ed144040a1d227d6433a15279ba16cf3ae48..8aa349c8a828b218bd206a370973e6c3cf21c43d 100644 (file)
@@ -521,8 +521,17 @@ type UserCommit struct {
        *git.Commit
 }
 
-// ValidCommitsWithEmails checks if authors' e-mails of commits are correcponding to users.
-func ValidCommitsWithEmails(oldCommits *list.List) *list.List {
+// ValidateCommitWithEmail chceck if author's e-mail of commit is corresponsind to a user.
+func ValidateCommitWithEmail(c *git.Commit) (uname string) {
+       u, err := GetUserByEmail(c.Author.Email)
+       if err == nil {
+               uname = u.Name
+       }
+       return uname
+}
+
+// ValidateCommitsWithEmails checks if authors' e-mails of commits are corresponding to users.
+func ValidateCommitsWithEmails(oldCommits *list.List) *list.List {
        emails := map[string]string{}
        newCommits := list.New()
        e := oldCommits.Front()
index 512df2534fba0b7afb34e55312164c4596099442..9791cc55110347b41274fbe29b8a533573244d26 100644 (file)
@@ -61,7 +61,7 @@ func Commits(ctx *middleware.Context) {
                ctx.Handle(500, "CommitsByRange", err)
                return
        }
-       commits = models.ValidCommitsWithEmails(commits)
+       commits = models.ValidateCommitsWithEmails(commits)
 
        ctx.Data["Commits"] = commits
        ctx.Data["Username"] = userName
@@ -99,7 +99,7 @@ func SearchCommits(ctx *middleware.Context) {
                ctx.Handle(500, "SearchCommits", err)
                return
        }
-       commits = models.ValidCommitsWithEmails(commits)
+       commits = models.ValidateCommitsWithEmails(commits)
 
        ctx.Data["Keyword"] = keyword
        ctx.Data["Username"] = userName
index 4e4a7b18ce4b6249d2ee36fd2c1072b0d821373e..82f34600298388e1328602592836836bc420ad28 100644 (file)
@@ -11,6 +11,7 @@ import (
        "path/filepath"
        "strings"
 
+       "github.com/gogits/gogs/models"
        "github.com/gogits/gogs/modules/base"
        "github.com/gogits/gogs/modules/git"
        "github.com/gogits/gogs/modules/log"
@@ -130,20 +131,20 @@ func Home(ctx *middleware.Context) {
                        if te.Type != git.COMMIT {
                                c, err := ctx.Repo.Commit.GetCommitOfRelPath(filepath.Join(treePath, te.Name()))
                                if err != nil {
-                                       ctx.Handle(404, "GetCommitOfRelPath", err)
+                                       ctx.Handle(500, "GetCommitOfRelPath", err)
                                        return
                                }
                                files = append(files, []interface{}{te, c})
                        } else {
                                sm, err := ctx.Repo.Commit.GetSubModule(path.Join(treename, te.Name()))
                                if err != nil {
-                                       ctx.Handle(404, "GetSubModule", err)
+                                       ctx.Handle(500, "GetSubModule", err)
                                        return
                                }
 
                                c, err := ctx.Repo.Commit.GetCommitOfRelPath(filepath.Join(treePath, te.Name()))
                                if err != nil {
-                                       ctx.Handle(404, "GetCommitOfRelPath", err)
+                                       ctx.Handle(500, "GetCommitOfRelPath", err)
                                        return
                                }
                                files = append(files, []interface{}{te, git.NewSubModuleFile(c, sm.Url, te.Id.String())})
@@ -195,6 +196,18 @@ func Home(ctx *middleware.Context) {
                                }
                        }
                }
+
+               lastCommit := ctx.Repo.Commit
+               if len(treePath) > 0 {
+                       c, err := ctx.Repo.Commit.GetCommitOfRelPath(treePath)
+                       if err != nil {
+                               ctx.Handle(500, "GetCommitOfRelPath", err)
+                               return
+                       }
+                       lastCommit = c
+               }
+               ctx.Data["LastCommit"] = lastCommit
+               ctx.Data["LastCommitUser"] = models.ValidateCommitWithEmail(lastCommit)
        }
 
        ctx.Data["Username"] = userName
@@ -215,7 +228,6 @@ func Home(ctx *middleware.Context) {
                }
        }
 
-       ctx.Data["LastCommit"] = ctx.Repo.Commit
        ctx.Data["Paths"] = Paths
        ctx.Data["TreeName"] = treename
        ctx.Data["Treenames"] = treenames
index 87b06b81620dbe90497467596826dde638c84157..59eee24b7617fe19167deb22efc76d0289fd9998 100644 (file)
@@ -1 +1 @@
-0.5.4.0925 Beta
\ No newline at end of file
+0.5.4.0926 Beta
\ No newline at end of file
index 850c7616413dd5ee62800a1e61646f9a7e5370cf..e6c43d9e40dd67d61ebaeb42f8fec76825002135 100644 (file)
@@ -4,7 +4,7 @@
         <th colspan="4" class="clear">
             <span class="author left">
                 <img class="avatar-24 radius" src="{{AvatarLink .LastCommit.Author.Email}}" />
-                <a href="{{AppSubUrl}}/user/email2user?email={{.LastCommit.Author.Email}}"><strong>{{.LastCommit.Author.Name}}</strong>:</a>
+                {{if .LastCommitUser}}<a href="{{AppSubUrl}}/{{.LastCommitUser}}">{{end}}<strong>{{.LastCommit.Author.Name}}</strong>:{{if .LastCommitUser}}</a>{{end}}
             </span>
             <span class="last-commit"><a href="{{.RepoLink}}/commit/{{.LastCommit.Id}}" rel="nofollow">
                 <strong>{{ShortSha .LastCommit.Id.String}}</strong></a>