瀏覽代碼

Implemented participant-listing for issue-pages

Kim "BKC" Carlbäcker 9 年之前
父節點
當前提交
2cc1ee3fc0
共有 2 個文件被更改,包括 32 次插入5 次删除
  1. 19 5
      routers/repo/issue.go
  2. 13 0
      templates/repo/issue/view_content.tmpl

+ 19 - 5
routers/repo/issue.go

@@ -589,12 +589,13 @@ func ViewIssue(ctx *middleware.Context) {
 	}
 
 	var (
-		tag     models.CommentTag
-		ok      bool
-		marked  = make(map[int64]models.CommentTag)
-		comment *models.Comment
+		tag          models.CommentTag
+		ok           bool
+		marked       = make(map[int64]models.CommentTag)
+		comment      *models.Comment
+		participants []*models.User
 	)
-	// Render comments.
+	// Render comments. (and fetch participants)
 	for _, comment = range issue.Comments {
 		if comment.Type == models.COMMENT_TYPE_COMMENT {
 			comment.RenderedContent = string(base.RenderMarkdown([]byte(comment.Content), ctx.Repo.RepoLink,
@@ -617,9 +618,22 @@ func ViewIssue(ctx *middleware.Context) {
 			}
 
 			marked[comment.PosterID] = comment.ShowTag
+
+			already_added := false
+			for j := range participants {
+				if comment.Poster == participants[j] {
+					already_added = true
+				}
+			}
+			if !already_added {
+				participants = append(participants, comment.Poster)
+			}
 		}
 	}
 
+	ctx.Data["Participants"] = participants
+
+
 	ctx.Data["Issue"] = issue
 	ctx.Data["IsIssueOwner"] = ctx.Repo.IsAdmin() || (ctx.IsSigned && issue.IsPoster(ctx.User.Id))
 	ctx.Data["SignInLink"] = setting.AppSubUrl + "/user/login"

+ 13 - 0
templates/repo/issue/view_content.tmpl

@@ -313,6 +313,19 @@
 					{{end}}
 				</div>
 			</div>
+
+			<div class="ui divider"></div>
+
+			<div class="ui participants floating jump">
+				<span class="text"><strong>{{len .Participants }} Participants</strong></span>
+				<div class="ui floating jump">
+					{{range .Participants}}
+						<a href="{{.HomeLink}}">
+							<img class="ui avatar image" src="{{.AvatarLink}}" data-title={{.FullName}}>
+						</a>
+					{{end}}
+				</div>
+			</div>
 		</div>
 	</div>
 </div>