2015-08-12 11:04:23 +02:00
< div class = "ui grid" >
{{ if .Flash }}
2015-12-07 23:30:52 +01:00
< div class = "sixteen wide column" >
{{ template "base/alert" . }}
< / div >
{{ end }}
{{ if not .Issue.IsPull }}
{{ template "repo/issue/view_title" . }}
{{ end }}
{{ $createdStr := TimeSince .Issue.Created $.Lang }}
2015-08-12 11:04:23 +02:00
< div class = "twelve wide column comment-list" >
2015-12-07 23:30:52 +01:00
< ui class = "ui comments" >
< div class = "comment" >
2016-07-23 19:08:22 +02:00
< a class = "avatar" {{ if gt .Issue.Poster.ID 0 }} href = " {{ .Issue.Poster.HomeLink }} " {{ end }} >
2016-08-05 21:12:54 +02:00
< img src = " {{ .Issue.Poster.RelAvatarLink }} " >
2015-12-07 23:30:52 +01:00
< / a >
< div class = "content" >
2015-08-12 11:04:23 +02:00
< div class = "ui top attached header" >
2016-07-23 19:08:22 +02:00
< span class = "text grey" >< a {{ if gt .Issue.Poster.ID 0 }} href = " {{ .Issue.Poster.HomeLink }} " {{ end }} > {{ .Issue.Poster.Name }} </ a > {{ .i18n.Tr "repo.issues.commented_at" .Issue.HashTag $createdStr | Safe }} </ span >
2015-12-07 23:30:52 +01:00
< div class = "ui right actions" >
{{ if .IsIssueOwner }}
2016-07-25 20:48:17 +02:00
< div class = "item action" >
< a class = "edit-content" href = "#" > < i class = "octicon octicon-pencil" > < / i > < / a >
< / div >
2015-12-07 23:30:52 +01:00
{{ end }}
< / div >
2015-08-12 11:04:23 +02:00
< / div >
2015-12-07 23:30:52 +01:00
< div class = "ui attached segment" >
2016-07-10 23:28:56 +02:00
< div class = "render-content markdown has-emoji" >
2015-12-07 23:30:52 +01:00
{{ if .Issue.RenderedContent }}
{{ .Issue.RenderedContent | Str2html }}
{{ else }}
< span class = "no-content" > {{ .i18n.Tr "repo.issues.no_content" }} </ span >
{{ end }}
2015-08-12 11:04:23 +02:00
< / div >
2015-12-07 23:30:52 +01:00
< div class = "raw-content hide" > {{ .Issue.Content }} </ div >
< div class = "edit-content-zone hide" data-write = "issue- {{ .Issue.ID }} -write" data-preview = "issue- {{ .Issue.ID }} -preview" data-update-url = " {{ $.RepoLink }} /issues/ {{ .Issue.Index }} /content" data-context = " {{ .RepoLink }} " ></ div >
2015-08-12 11:04:23 +02:00
< / div >
2015-12-07 23:30:52 +01:00
{{ if .Issue.Attachments }}
< div class = "ui bottom attached segment" >
< div class = "ui small images" >
{{ range .Issue.Attachments }}
2016-08-12 01:16:36 +02:00
< a target = "_blank" href = " {{ AppSubUrl }} /attachments/ {{ .UUID }} " >
{{ if FilenameIsImage .Name }}
< img class = "ui image" src = " {{ AppSubUrl }} /attachments/ {{ .UUID }} " title = ' {{ $.i18n.Tr "repo.issues.attachment.open_tab" .Name }} ' >
{{ else }}
< span class = "ui image octicon octicon-desktop-download" title = ' {{ $.i18n.Tr "repo.issues.attachment.download" .Name }} ' ></ span >
{{ end }}
< / a >
2015-12-07 23:30:52 +01:00
{{ end }}
< / div >
< / div >
{{ end }}
< / div >
< / div >
2015-08-12 12:44:09 +02:00
2015-12-07 23:30:52 +01:00
{{ range .Issue.Comments }}
{{ $createdStr := TimeSince .Created $.Lang }}
2015-08-13 17:21:43 +02:00
2015-12-07 23:30:52 +01:00
<!-- 0 = COMMENT, 1 = REOPEN, 2 = CLOSE, 3 = ISSUE_REF, 4 = COMMIT_REF, 5 = COMMENT_REF, 6 = PULL_REF -->
{{ if eq .Type 0 }}
2016-07-25 20:48:17 +02:00
< div class = "comment" id = " {{ .HashTag }} " >
2016-07-23 19:08:22 +02:00
< a class = "avatar" {{ if gt .Poster.ID 0 }} href = " {{ .Poster.HomeLink }} " {{ end }} >
2016-08-05 21:12:54 +02:00
< img src = " {{ .Poster.RelAvatarLink }} " >
2015-12-07 23:30:52 +01:00
< / a >
< div class = "content" >
< div class = "ui top attached header" >
2016-07-23 19:08:22 +02:00
< span class = "text grey" >< a {{ if gt .Poster.ID 0 }} href = " {{ .Poster.HomeLink }} " {{ end }} > {{ .Poster.Name }} </ a > {{ $.i18n.Tr "repo.issues.commented_at" .HashTag $createdStr | Safe }} </ span >
2015-12-07 23:30:52 +01:00
< div class = "ui right actions" >
{{ if gt .ShowTag 0 }}
< div class = "item tag" >
{{ if eq .ShowTag 1 }}
{{ $.i18n.Tr "repo.issues.poster" }}
{{ else if eq .ShowTag 2 }}
2016-03-06 02:45:23 +01:00
{{ $.i18n.Tr "repo.issues.collaborator" }}
2015-12-07 23:30:52 +01:00
{{ else if eq .ShowTag 3 }}
{{ $.i18n.Tr "repo.issues.owner" }}
{{ end }}
< / div >
{{ end }}
2016-07-23 19:08:22 +02:00
{{ if or $.IsRepositoryAdmin ( eq .Poster.ID $.SignedUserID ) }}
2016-07-25 20:48:17 +02:00
< div class = "item action" >
< a class = "edit-content" href = "#" > < i class = "octicon octicon-pencil" > < / i > < / a >
< a class = "delete-comment" href = "#" data-comment-id = {{ .HashTag }} data-url=" {{ $.RepoLink }} /comments/ {{ .ID }} /delete" data-locale = " {{ $.i18n.Tr "repo.issues.delete_comment_confirm" }} " >< i class = "octicon octicon-x" ></ i ></ a >
< / div >
2015-12-07 23:30:52 +01:00
{{ end }}
< / div >
< / div >
< div class = "ui attached segment" >
2016-07-10 23:28:56 +02:00
< div class = "render-content markdown has-emoji" >
2015-12-07 23:30:52 +01:00
{{ if .RenderedContent }}
{{ .RenderedContent | Str2html }}
{{ else }}
< span class = "no-content" > {{ $.i18n.Tr "repo.issues.no_content" }} </ span >
{{ end }}
< / div >
< div class = "raw-content hide" > {{ .Content }} </ div >
< div class = "edit-content-zone hide" data-write = "issuecomment- {{ .ID }} -write" data-preview = "issuecomment- {{ .ID }} -preview" data-update-url = " {{ $.RepoLink }} /comments/ {{ .ID }} " data-context = " {{ $.RepoLink }} " ></ div >
< / div >
{{ if .Attachments }}
< div class = "ui bottom attached segment" >
< div class = "ui small images" >
{{ range .Attachments }}
2016-08-12 01:16:36 +02:00
< a target = "_blank" href = " {{ AppSubUrl }} /attachments/ {{ .UUID }} " >
{{ if FilenameIsImage .Name }}
< img class = "ui image" src = " {{ AppSubUrl }} /attachments/ {{ .UUID }} " title = ' {{ $.i18n.Tr "repo.issues.attachment.open_tab" .Name }} ' >
{{ else }}
< span class = "ui image octicon octicon-desktop-download" title = ' {{ $.i18n.Tr "repo.issues.attachment.download" .Name }} ' ></ span >
{{ end }}
< / a >
2015-12-07 23:30:52 +01:00
{{ end }}
< / div >
< / div >
{{ end }}
< / div >
< / div >
{{ else if eq .Type 1 }}
< div class = "event" >
< span class = "octicon octicon-primitive-dot" > < / span >
< a class = "ui avatar image" href = " {{ .Poster.HomeLink }} " >
2016-08-05 21:12:54 +02:00
< img src = " {{ .Poster.RelAvatarLink }} " >
2015-12-07 23:30:52 +01:00
< / a >
< span class = "text grey" >< a href = " {{ .Poster.HomeLink }} " > {{ .Poster.Name }} </ a > {{ $.i18n.Tr "repo.issues.reopened_at" .EventTag $createdStr | Safe }} </ span >
< / div >
{{ else if eq .Type 2 }}
< div class = "event" >
< span class = "octicon octicon-circle-slash" > < / span >
< a class = "ui avatar image" href = " {{ .Poster.HomeLink }} " >
2016-08-05 21:12:54 +02:00
< img src = " {{ .Poster.RelAvatarLink }} " >
2015-12-07 23:30:52 +01:00
< / a >
< span class = "text grey" >< a href = " {{ .Poster.HomeLink }} " > {{ .Poster.Name }} </ a > {{ $.i18n.Tr "repo.issues.closed_at" .EventTag $createdStr | Safe }} </ span >
2015-08-13 10:07:11 +02:00
< / div >
2015-12-07 23:30:52 +01:00
{{ else if eq .Type 4 }}
< div class = "event" >
< span class = "octicon octicon-bookmark" > < / span >
< a class = "ui avatar image" href = " {{ .Poster.HomeLink }} " >
2016-08-05 21:12:54 +02:00
< img src = " {{ .Poster.RelAvatarLink }} " >
2015-12-07 23:30:52 +01:00
< / a >
< span class = "text grey" >< a href = " {{ .Poster.HomeLink }} " > {{ .Poster.Name }} </ a > {{ $.i18n.Tr "repo.issues.commit_ref_at" .EventTag $createdStr | Safe }} </ span >
< div class = "detail" >
< span class = "octicon octicon-git-commit" > < / span >
< span class = "text grey" > {{ .Content | Str2html }} </ span >
2015-08-13 10:07:11 +02:00
< / div >
< / div >
2015-12-07 23:30:52 +01:00
{{ end }}
2015-08-29 18:45:56 +02:00
2015-08-13 17:21:43 +02:00
{{ end }}
2015-12-07 23:30:52 +01:00
{{ if .Issue.IsPull }}
< div class = "comment merge box" >
< a class = "avatar text
2016-08-16 19:19:09 +02:00
{{ if .Issue.PullRequest.HasMerged }} purple
2015-12-07 23:30:52 +01:00
{{ else if .Issue.IsClosed }} grey
{{ else if .IsPullReuqestBroken }} red
2016-08-16 19:19:09 +02:00
{{ else if .Issue.PullRequest.IsChecking }} yellow
{{ else if .Issue.PullRequest.CanAutoMerge }} green
2015-12-07 23:30:52 +01:00
{{ else }} red{{ end }} ">< span class = "mega-octicon octicon-git-merge" ></ span ></ a >
< div class = "content" >
< div class = "ui merge segment" >
2016-08-16 19:19:09 +02:00
{{ if .Issue.PullRequest.HasMerged }}
2015-12-07 23:30:52 +01:00
< div class = "item text purple" >
{{ $.i18n.Tr "repo.pulls.has_merged" }}
< / div >
{{ else if .Issue.IsClosed }}
< div class = "item text grey" >
{{ $.i18n.Tr "repo.pulls.reopen_to_merge" }}
2015-09-02 15:26:56 +02:00
< / div >
2015-12-07 23:30:52 +01:00
{{ else if .IsPullReuqestBroken }}
< div class = "item text red" >
< span class = "octicon octicon-x" > < / span >
{{ $.i18n.Tr "repo.pulls.data_broken" }}
2015-09-02 15:26:56 +02:00
< / div >
2016-08-16 19:19:09 +02:00
{{ else if .Issue.PullRequest.IsChecking }}
2015-12-07 23:30:52 +01:00
< div class = "item text yellow" >
< span class = "octicon octicon-sync" > < / span >
{{ $.i18n.Tr "repo.pulls.is_checking" }}
< / div >
2016-08-16 19:19:09 +02:00
{{ else if .Issue.PullRequest.CanAutoMerge }}
2015-12-07 23:30:52 +01:00
< div class = "item text green" >
< span class = "octicon octicon-check" > < / span >
{{ $.i18n.Tr "repo.pulls.can_auto_merge_desc" }}
< / div >
2016-03-06 02:45:23 +01:00
{{ if .IsRepositoryWriter }}
2015-12-07 23:30:52 +01:00
< div class = "ui divider" > < / div >
< div >
< form class = "ui form" action = " {{ .Link }} /merge" method = "post" >
{{ .CsrfTokenHtml }}
< button class = "ui green button" >
< span class = "octicon octicon-git-merge" ></ span > {{ $.i18n.Tr "repo.pulls.merge_pull_request" }}
< / button >
< / form >
< / div >
2015-09-02 15:26:56 +02:00
{{ end }}
2015-12-07 23:30:52 +01:00
{{ else }}
< div class = "item text red" >
< span class = "octicon octicon-x" > < / span >
{{ $.i18n.Tr "repo.pulls.cannot_auto_merge_desc" }}
< / div >
< div class = "item text grey" >
< span class = "octicon octicon-info" > < / span >
{{ $.i18n.Tr "repo.pulls.cannot_auto_merge_helper" }}
< / div >
2015-08-14 20:48:05 +02:00
{{ end }}
2015-12-07 23:30:52 +01:00
< / div >
< / div >
< / div >
{{ end }}
{{ if .IsSigned }}
< div class = "comment form" >
< a class = "avatar" href = " {{ .SignedUser.HomeLink }} " >
2016-08-05 21:12:54 +02:00
< img src = " {{ .SignedUser.RelAvatarLink }} " >
2015-12-07 23:30:52 +01:00
< / a >
< div class = "content" >
< form class = "ui segment form" id = "comment-form" action = " {{ $.RepoLink }} /issues/ {{ .Issue.Index }} /comments" method = "post" >
{{ template "repo/issue/comment_tab" . }}
{{ .CsrfTokenHtml }}
< input id = "status" name = "status" type = "hidden" >
< div class = "text right" >
{{ if and .IsIssueOwner ( not .DisableStatusChange ) }}
{{ if .Issue.IsClosed }}
< div id = "status-button" class = "ui green basic button" tabindex = "6" data-status = " {{ .i18n.Tr "repo.issues.reopen_issue" }} " data-status-and-comment = " {{ .i18n.Tr "repo.issues.reopen_comment_issue" }} " data-status-val = "reopen" >
{{ .i18n.Tr "repo.issues.reopen_issue" }}
< / div >
{{ else }}
< div id = "status-button" class = "ui red basic button" tabindex = "6" data-status = " {{ .i18n.Tr "repo.issues.close_issue" }} " data-status-and-comment = " {{ .i18n.Tr "repo.issues.close_comment_issue" }} " data-status-val = "close" >
{{ .i18n.Tr "repo.issues.close_issue" }}
< / div >
{{ end }}
{{ end }}
< button class = "ui green button" tabindex = "5" >
{{ .i18n.Tr "repo.issues.create_comment" }}
< / button >
< / div >
< / form >
< / div >
< / div >
{{ else }}
< div class = "ui warning message" >
2016-08-11 16:41:01 +02:00
{{ .i18n.Tr "repo.issues.sign_in_require_desc" .SignInLink | Safe }}
2015-12-07 23:30:52 +01:00
< / div >
{{ end }}
< / ui >
2015-08-12 11:04:23 +02:00
< / div >
< div class = "four wide column" >
< div class = "ui segment metas" >
2016-03-06 02:45:23 +01:00
< div class = "ui {{ if not .IsRepositoryWriter }} disabled {{ end }} floating jump select-label dropdown" >
2015-08-12 11:04:23 +02:00
< span class = "text" >
< strong > {{ .i18n.Tr "repo.issues.new.labels" }} </ strong >
< span class = "octicon octicon-gear" > < / span >
< / span >
2015-12-07 23:30:52 +01:00
< div class = "filter menu" data-action = "update" data-update-url = " {{ $.RepoLink }} /issues/ {{ $.Issue.Index }} /label" >
< div class = "no-select item" > {{ .i18n.Tr "repo.issues.new.clear_labels" }} </ div >
{{ range .Labels }}
< a class = " {{ if .IsChecked }} checked {{ end }} item" href = "#" data-id = " {{ .ID }} " data-id-selector = "#label_ {{ .ID }} " >< span class = "octicon {{ if .IsChecked }} octicon-check {{ end }} " ></ span >< span class = "label color" style = "background-color: {{ .Color }} " ></ span > {{ .Name }} </ a >
{{ end }}
2015-08-12 11:04:23 +02:00
< / div >
< / div >
< div class = "ui labels list" >
< span class = "no-select item {{ if .HasSelectedLabel }} hide {{ end }} " > {{ .i18n.Tr "repo.issues.new.no_label" }} </ span >
2015-12-07 23:30:52 +01:00
{{ range .Labels }}
2016-03-16 00:52:40 +01:00
< div class = "item" >
< a class = "ui label {{ if not .IsChecked }} hide {{ end }} " id = "label_ {{ .ID }} " href = " {{ $.RepoLink }} /issues?labels= {{ .ID }} " style = "color: {{ .ForegroundColor }} ; background-color: {{ .Color }} " > {{ .Name }} </ a >
< / div >
2015-12-07 23:30:52 +01:00
{{ end }}
2015-08-12 11:04:23 +02:00
< / div >
< div class = "ui divider" > < / div >
2016-03-06 02:45:23 +01:00
< div class = "ui {{ if not .IsRepositoryWriter }} disabled {{ end }} floating jump select-milestone dropdown" >
2015-08-12 11:04:23 +02:00
< span class = "text" >
< strong > {{ .i18n.Tr "repo.issues.new.milestone" }} </ strong >
< span class = "octicon octicon-gear" > < / span >
< / span >
2015-12-07 23:30:52 +01:00
< div class = "menu" data-action = "update" data-update-url = " {{ $.RepoLink }} /issues/ {{ $.Issue.Index }} /milestone" >
< div class = "no-select item" > {{ .i18n.Tr "repo.issues.new.clear_milestone" }} </ div >
{{ if .OpenMilestones }}
< div class = "divider" > < / div >
< div class = "header" >
< i class = "octicon octicon-milestone" > < / i >
{{ .i18n.Tr "repo.issues.new.open_milestone" }}
< / div >
{{ range .OpenMilestones }}
< div class = "item" data-id = " {{ .ID }} " data-href = " {{ $.RepoLink }} /issues?milestone= {{ .ID }} " > {{ .Name }} </ div >
{{ end }}
{{ end }}
{{ if .ClosedMilestones }}
< div class = "divider" > < / div >
< div class = "header" >
< i class = "octicon octicon-milestone" > < / i >
{{ .i18n.Tr "repo.issues.new.closed_milestone" }}
< / div >
{{ range .ClosedMilestones }}
< a class = "item" data-id = " {{ .ID }} " data-href = " {{ $.RepoLink }} /issues?milestone= {{ .ID }} " > {{ .Name }} </ a >
{{ end }}
{{ end }}
2015-08-12 11:04:23 +02:00
< / div >
< / div >
< div class = "ui select-milestone list" >
< span class = "no-select item {{ if .Issue.Milestone }} hide {{ end }} " > {{ .i18n.Tr "repo.issues.new.no_milestone" }} </ span >
< div class = "selected" >
{{ if .Issue.Milestone }}
2015-12-07 23:30:52 +01:00
< a class = "item" href = " {{ .RepoLink }} /issues?milestone= {{ .Issue.Milestone.ID }} " > {{ .Issue.Milestone.Name }} </ a >
2015-08-12 11:04:23 +02:00
{{ end }}
< / div >
< / div >
< div class = "ui divider" > < / div >
< input id = "assignee_id" name = "assignee_id" type = "hidden" value = " {{ .assignee_id }} " >
2016-03-06 02:45:23 +01:00
< div class = "ui {{ if not .IsRepositoryWriter }} disabled {{ end }} floating jump select-assignee dropdown" >
2015-08-12 11:04:23 +02:00
< span class = "text" >
< strong > {{ .i18n.Tr "repo.issues.new.assignee" }} </ strong >
< span class = "octicon octicon-gear" > < / span >
< / span >
2015-12-07 23:30:52 +01:00
< div class = "menu" data-action = "update" data-update-url = " {{ $.RepoLink }} /issues/ {{ $.Issue.Index }} /assignee" >
< div class = "no-select item" > {{ .i18n.Tr "repo.issues.new.clear_assignee" }} </ div >
{{ range .Assignees }}
2016-08-05 21:12:54 +02:00
< div class = "item" data-id = " {{ .ID }} " data-href = " {{ $.RepoLink }} /issues?assignee= {{ .ID }} " data-avatar = " {{ .RelAvatarLink }} " >< img src = " {{ .RelAvatarLink }} " > {{ .Name }} </ div >
2015-12-07 23:30:52 +01:00
{{ end }}
2015-08-12 11:04:23 +02:00
< / div >
< / div >
< div class = "ui select-assignee list" >
< span class = "no-select item {{ if .Issue.Assignee }} hide {{ end }} " > {{ .i18n.Tr "repo.issues.new.no_assignee" }} </ span >
< div class = "selected" >
{{ if .Issue.Assignee }}
2016-08-05 21:12:54 +02:00
< a class = "item" href = " {{ $.RepoLink }} /issues?assignee= {{ .Issue.Assignee.ID }} " >< img class = "ui avatar image" src = " {{ .Issue.Assignee.RelAvatarLink }} " > {{ .Issue.Assignee.Name }} </ a >
2015-08-12 11:04:23 +02:00
{{ end }}
< / div >
< / div >
2016-01-19 14:04:24 +01:00
< div class = "ui divider" > < / div >
2016-02-02 02:55:12 +01:00
< div class = "ui participants" >
< span class = "text" >< strong > {{ .i18n.Tr "repo.issues.num_participants" .NumParticipants }} </ strong ></ span >
< div >
2016-01-19 14:04:24 +01:00
{{ range .Participants }}
< a href = " {{ .HomeLink }} " >
2016-08-05 21:12:54 +02:00
< img class = "ui avatar image poping up" src = " {{ .RelAvatarLink }} " data-content = " {{ .DisplayName }} " data-position = "top center" data-variation = "small inverted" >
2016-01-19 14:04:24 +01:00
< / a >
{{ end }}
< / div >
< / div >
2015-08-12 11:04:23 +02:00
< / div >
< / div >
2015-08-19 22:31:28 +02:00
< / div >
< div class = "hide" id = "edit-content-form" >
< div class = "ui comment form" >
< div class = "ui top attached tabular menu" >
2015-12-07 23:30:52 +01:00
< a class = "active write item" > {{ $.i18n.Tr "repo.release.write" }} </ a >
< a class = "preview item" data-url = " {{ AppSubUrl }} /api/v1/markdown" data-context = " {{ $.RepoLink }} " > {{ $.i18n.Tr "repo.release.preview" }} </ a >
2015-08-19 22:31:28 +02:00
< / div >
< div class = "ui bottom attached active write tab segment" >
2015-12-07 23:30:52 +01:00
< textarea tabindex = "1" id = "content" name = "content" > < / textarea >
2015-08-19 22:31:28 +02:00
< / div >
2016-07-10 23:28:56 +02:00
< div class = "ui bottom attached tab preview segment markdown" >
2015-12-07 23:30:52 +01:00
{{ $.i18n.Tr "repo.release.loading" }}
2015-08-19 22:31:28 +02:00
< / div >
2015-12-07 23:30:52 +01:00
< div class = "text right edit buttons" >
2015-11-11 20:54:50 +01:00
< div class = "ui basic blue cancel button" tabindex = "3" > {{ .i18n.Tr "repo.issues.cancel" }} </ div >
< div class = "ui green save button" tabindex = "2" > {{ .i18n.Tr "repo.issues.save" }} </ div >
2015-12-07 23:30:52 +01:00
< / div >
2015-08-19 22:31:28 +02:00
< / div >
< / div >
< div class = "hide" id = "no-content" >
< span class = "no-content" > {{ .i18n.Tr "repo.issues.no_content" }} </ span >
2015-12-07 23:30:52 +01:00
< / div >