Implemented participant-listing for issue-pages

release/v1.15
Kim "BKC" Carlbäcker 2016-01-19 14:04:24 +01:00
parent ab0ba4bbae
commit 2cc1ee3fc0
2 changed files with 32 additions and 5 deletions

View File

@ -589,12 +589,13 @@ func ViewIssue(ctx *middleware.Context) {
} }
var ( var (
tag models.CommentTag tag models.CommentTag
ok bool ok bool
marked = make(map[int64]models.CommentTag) marked = make(map[int64]models.CommentTag)
comment *models.Comment comment *models.Comment
participants []*models.User
) )
// Render comments. // Render comments. (and fetch participants)
for _, comment = range issue.Comments { for _, comment = range issue.Comments {
if comment.Type == models.COMMENT_TYPE_COMMENT { if comment.Type == models.COMMENT_TYPE_COMMENT {
comment.RenderedContent = string(base.RenderMarkdown([]byte(comment.Content), ctx.Repo.RepoLink, 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 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["Issue"] = issue
ctx.Data["IsIssueOwner"] = ctx.Repo.IsAdmin() || (ctx.IsSigned && issue.IsPoster(ctx.User.Id)) ctx.Data["IsIssueOwner"] = ctx.Repo.IsAdmin() || (ctx.IsSigned && issue.IsPoster(ctx.User.Id))
ctx.Data["SignInLink"] = setting.AppSubUrl + "/user/login" ctx.Data["SignInLink"] = setting.AppSubUrl + "/user/login"

View File

@ -313,6 +313,19 @@
{{end}} {{end}}
</div> </div>
</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> </div>
</div> </div>