Browse Source

Fix commit feed ui

Unknown 11 years ago
parent
commit
ec65be79f0
5 changed files with 20 additions and 10 deletions
  1. 1 1
      gogs.go
  2. 10 7
      modules/base/tool.go
  3. 6 0
      public/css/gogs.css
  4. 1 1
      routers/user/user.go
  5. 2 1
      templates/user/profile.tmpl

+ 1 - 1
gogs.go

@@ -20,7 +20,7 @@ import (
 // Test that go1.1 tag above is included in builds. main.go refers to this definition.
 const go11tag = true
 
-const APP_VER = "0.0.8.0316.1"
+const APP_VER = "0.0.9.0316.1"
 
 func init() {
 	base.AppVer = APP_VER

+ 10 - 7
modules/base/tool.go

@@ -5,6 +5,7 @@
 package base
 
 import (
+	"bytes"
 	"crypto/md5"
 	"encoding/hex"
 	"encoding/json"
@@ -253,16 +254,14 @@ func ActionIcon(opType int) string {
 }
 
 const (
-	TPL_CREATE_REPO = `<a href="/user/%s">%s</a> created repository <a href="/%s/%s">%s</a>`
-	TPL_COMMIT_REPO = `<a href="/user/%s">%s</a> pushed to <a href="/%s/%s/tree/%s">%s</a> at <a href="/%s/%s">%s/%s</a>
-<ul>
-	<li><a href="/%s/%s/commit/%s">%s</a> %s</li>	
-</ul>`
+	TPL_CREATE_REPO    = `<a href="/user/%s">%s</a> created repository <a href="/%s/%s">%s</a>`
+	TPL_COMMIT_REPO    = `<a href="/user/%s">%s</a> pushed to <a href="/%s/%s/tree/%s">%s</a> at <a href="/%s/%s">%s/%s</a>%s`
+	TPL_COMMIT_REPO_LI = `<div><img id="gogs-user-avatar-commit" src="%s?s=16" alt="user-avatar" title="username"/> <a href="/%s/%s/commit/%s">%s</a> %s</div>`
 )
 
 // ActionDesc accepts int that represents action operation type
 // and returns the description.
-func ActionDesc(act Actioner) string {
+func ActionDesc(act Actioner, avatarLink string) string {
 	actUserName := act.GetActUserName()
 	repoName := act.GetRepoName()
 	content := act.GetContent()
@@ -274,8 +273,12 @@ func ActionDesc(act Actioner) string {
 		if err := json.Unmarshal([]byte(content), &commits); err != nil {
 			return err.Error()
 		}
+		buf := bytes.NewBuffer([]byte("\n"))
+		for _, commit := range commits {
+			buf.WriteString(fmt.Sprintf(TPL_COMMIT_REPO_LI, avatarLink, actUserName, repoName, commit[0], commit[0][:7], commit[1]) + "\n")
+		}
 		return fmt.Sprintf(TPL_COMMIT_REPO, actUserName, actUserName, actUserName, repoName, "master", "master", actUserName, repoName, actUserName, repoName,
-			actUserName, repoName, commits[0][0], commits[0][0][:7], commits[0][1])
+			buf.String())
 	default:
 		return "invalid type"
 	}

+ 6 - 0
public/css/gogs.css

@@ -228,6 +228,12 @@ html, body {
     border-radius: 6px;
 }
 
+#gogs-user-avatar-commit {
+    width: 16px;
+    height: 16px;
+    border-radius: 2px;
+}
+
 #gogs-user-name {
     margin-top: 20px;
     font-size: 1.6em;

+ 1 - 1
routers/user/user.go

@@ -195,7 +195,7 @@ func Feeds(ctx *middleware.Context, form auth.FeedsForm) {
 	feeds := make([]string, len(actions))
 	for i := range actions {
 		feeds[i] = fmt.Sprintf(feedTpl, base.ActionIcon(actions[i].OpType),
-			base.TimeSince(actions[i].Created), base.ActionDesc(actions[i]))
+			base.TimeSince(actions[i].Created), base.ActionDesc(actions[i], ctx.User.AvatarLink()))
 	}
 	ctx.Render.JSON(200, &feeds)
 }

+ 2 - 1
templates/user/profile.tmpl

@@ -32,10 +32,11 @@
             {{if eq .TabName "activity"}}
             <div class="tab-pane active">
                 <ul class="list-unstyled activity-list">
+                {{$avatarLink := .Owner.AvatarLink}}
                 {{range .Feeds}}
                     <li>
                         <i class="icon fa fa-{{ActionIcon .OpType}}"></i>
-                        <div class="info"><span class="meta">{{TimeSince .Created}}</span><br>{{ActionDesc . | str2html}}</div>
+                        <div class="info"><span class="meta">{{TimeSince .Created}}</span><br>{{ActionDesc . $avatarLink | str2html}}</div>
                         <span class="clearfix"></span>
                     </li>
                 {{else}}