123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665 |
- {{ template "base/alert" }}
- {{range .Issue.Comments}}
- {{ $createdStr:= TimeSinceUnix .CreatedUnix $.Lang }}
-
- <!-- 0 = COMMENT, 1 = REOPEN, 2 = CLOSE, 3 = ISSUE_REF, 4 = COMMIT_REF,
- 5 = COMMENT_REF, 6 = PULL_REF, 7 = COMMENT_LABEL, 12 = START_TRACKING,
- 13 = STOP_TRACKING, 14 = ADD_TIME_MANUAL, 16 = ADDED_DEADLINE, 17 = MODIFIED_DEADLINE,
- 18 = REMOVED_DEADLINE, 19 = ADD_DEPENDENCY, 20 = REMOVE_DEPENDENCY, 21 = CODE,
- 22 = REVIEW, 23 = ISSUE_LOCKED, 24 = ISSUE_UNLOCKED, 25 = TARGET_BRANCH_CHANGED,
- 26 = DELETE_TIME_MANUAL, 27 = REVIEW_REQUEST, 28 = MERGE_PULL_REQUEST,
- 29 = PULL_PUSH_EVENT, 30 = PROJECT_CHANGED, 31 = PROJECT_BOARD_CHANGED -->
- {{if eq .Type 0}}
- <div class="timeline-item comment" id="{{.HashTag}}">
- {{if .OriginalAuthor }}
- <span class="timeline-avatar"><img src="/img/avatar_default.png"></span>
- {{else}}
- <a class="timeline-avatar" {{if gt .Poster.ID 0}}href="{{.Poster.HomeLink}}"{{end}}>
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- {{end}}
- <div class="content">
- <div class="ui top attached header">
- {{if .OriginalAuthor }}
- <span class="text black"><i class="fa {{MigrationIcon $.Repository.GetOriginalURLHostname}}" aria-hidden="true"></i> {{ .OriginalAuthor }}</span><span class="text grey"> {{$.i18n.Tr "repo.issues.commented_at" .Issue.HashTag $createdStr | Safe}} {{if $.Repository.OriginalURL}}</span><span class="text migrate">({{$.i18n.Tr "repo.migrated_from" $.Repository.OriginalURL $.Repository.GetOriginalURLHostname | Safe }}){{end}}</span>
- {{else}}
- <span class="text grey"><a class="author"{{if gt .Poster.ID 0}} href="{{.Poster.HomeLink}}"{{end}}>{{.Poster.GetDisplayName}}</a> {{$.i18n.Tr "repo.issues.commented_at" .HashTag $createdStr | Safe}}</span>
- {{end}}
- {{if not $.Repository.IsArchived}}
- <div class="ui right actions">
- {{if eq .PosterID .Issue.PosterID }}
- <div class="ui basic label">
- {{$.i18n.Tr "repo.issues.poster"}}
- </div>
- {{end}}
- {{if gt .ShowTag 0}}
- <div class="ui basic label">
- {{if eq .ShowTag 2}}
- {{$.i18n.Tr "repo.issues.collaborator"}}
- {{else if eq .ShowTag 3}}
- {{$.i18n.Tr "repo.issues.owner"}}
- {{end}}
- </div>
- {{end}}
- {{template "repo/issue/view_content/add_reaction" Dict "ctx" $ "ActionURL" (Printf "%s/comments/%d/reactions" $.RepoLink .ID)}}
- {{template "repo/issue/view_content/context_menu" Dict "ctx" $ "item" . "delete" true "diff" false "IsCommentPoster" (and $.IsSigned (eq $.SignedUserID .PosterID))}}
- </div>
- {{end}}
- </div>
- <div class="ui attached segment">
- <div class="render-content markdown">
- {{if .RenderedContent}}
- {{.RenderedContent|Str2html}}
- {{else}}
- <span class="no-content">{{$.i18n.Tr "repo.issues.no_content"}}</span>
- {{end}}
- </div>
- <div id="comment-{{.ID}}" 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}}" data-attachment-url="{{$.RepoLink}}/comments/{{.ID}}/attachments"></div>
- {{if .Attachments}}
- <div class="dropzone-attachments">
- <div class="ui clearing divider"></div>
- <div class="ui middle aligned padded grid">
- {{template "repo/issue/view_content/attachments" Dict "ctx" $ "Attachments" .Attachments}}
- </div>
- </div>
- {{end}}
- </div>
- {{$reactions := .Reactions.GroupByType}}
- {{if $reactions}}
- <div class="ui attached segment reactions">
- {{template "repo/issue/view_content/reactions" Dict "ctx" $ "ActionURL" (Printf "%s/comments/%d/reactions" $.RepoLink .ID) "Reactions" $reactions}}
- </div>
- {{end}}
- </div>
- </div>
- {{else if eq .Type 1}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-dot-fill"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{if .Issue.IsPull }}
- {{$.i18n.Tr "repo.pulls.reopened_at" .EventTag $createdStr | Safe}}
- {{else}}
- {{$.i18n.Tr "repo.issues.reopened_at" .EventTag $createdStr | Safe}}
- {{end}}
- </span>
- </div>
- {{else if eq .Type 2}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-circle-slash"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{if .Issue.IsPull }}
- {{$.i18n.Tr "repo.pulls.closed_at" .EventTag $createdStr | Safe}}
- {{else}}
- {{$.i18n.Tr "repo.issues.closed_at" .EventTag $createdStr | Safe}}
- {{end}}
- </span>
- </div>
- {{else if eq .Type 28}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge purple">{{svg "octicon-git-merge"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$link := printf "%s/commit/%s" $.Repository.HTMLURL $.Issue.PullRequest.MergedCommitID}}
- {{$.i18n.Tr "repo.issues.pull_merged_at" $link (ShortSha $.Issue.PullRequest.MergedCommitID) ($.BaseTarget|Escape) $createdStr | Str2html}}
- </span>
- </div>
- {{else if eq .Type 3 5 6}}
- {{ $refFrom:= "" }}
- {{if ne .RefRepoID .Issue.RepoID}}
- {{ $refFrom = $.i18n.Tr "repo.issues.ref_from" .RefRepo.FullName }}
- {{end}}
- {{ $refTr := "repo.issues.ref_issue_from" }}
- {{if .Issue.IsPull}}
- {{ $refTr = "repo.issues.ref_pull_from" }}
- {{else if eq .RefAction 1 }}
- {{ $refTr = "repo.issues.ref_closing_from" }}
- {{else if eq .RefAction 2 }}
- {{ $refTr = "repo.issues.ref_reopening_from" }}
- {{end}}
- {{ $createdStr:= TimeSinceUnix .CreatedUnix $.Lang }}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-bookmark"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- {{if eq .RefAction 3}}<del>{{end}}
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr $refTr .EventTag $createdStr .RefCommentHTMLURL $refFrom | Safe}}
- </span>
- {{if eq .RefAction 3}}</del>{{end}}
-
- <div class="detail">
- <span class="text grey"><a href="{{.RefIssueHTMLURL}}"><b>{{.RefIssueTitle | Str2html}}</b> {{.RefIssueIdent | Str2html}}</a></span>
- </div>
- </div>
- {{else if eq .Type 4}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-bookmark"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.commit_ref_at" .EventTag $createdStr | Safe}}
- </span>
- <div class="detail">
- {{svg "octicon-git-commit"}}
- <span class="text grey">{{.Content | Str2html}}</span>
- </div>
- </div>
- {{else if eq .Type 7}}
- {{if or .AddedLabels .RemovedLabels}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-tag"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{if and .AddedLabels (not .RemovedLabels)}}
- {{$.i18n.Tr (TrN $.i18n.Lang (len .AddedLabels) "repo.issues.add_label" "repo.issues.add_labels") (RenderLabels .AddedLabels) $createdStr | Safe}}
- {{else if and (not .AddedLabels) .RemovedLabels}}
- {{$.i18n.Tr (TrN $.i18n.Lang (len .RemovedLabels) "repo.issues.remove_label" "repo.issues.remove_labels") (RenderLabels .RemovedLabels) $createdStr | Safe}}
- {{else}}
- {{$.i18n.Tr "repo.issues.add_remove_labels" (RenderLabels .AddedLabels) (RenderLabels .RemovedLabels) $createdStr | Safe}}
- {{end}}
- </span>
- </div>
- {{end}}
- {{else if eq .Type 8}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-milestone"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{if gt .OldMilestoneID 0}}{{if gt .MilestoneID 0}}{{$.i18n.Tr "repo.issues.change_milestone_at" (.OldMilestone.Name|Escape) (.Milestone.Name|Escape) $createdStr | Safe}}{{else}}{{$.i18n.Tr "repo.issues.remove_milestone_at" (.OldMilestone.Name|Escape) $createdStr | Safe}}{{end}}{{else if gt .MilestoneID 0}}{{$.i18n.Tr "repo.issues.add_milestone_at" (.Milestone.Name|Escape) $createdStr | Safe}}{{end}}
- </span>
- </div>
- {{else if eq .Type 9}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-person"}}</span>
- {{if gt .AssigneeID 0}}
- {{if .RemovedAssignee}}
- <a class="ui avatar image" href="{{.Assignee.HomeLink}}">
- <img src="{{.Assignee.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Assignee.HomeLink}}">{{.Assignee.GetDisplayName}}</a>
- {{ if eq .Poster.ID .Assignee.ID }}
- {{$.i18n.Tr "repo.issues.remove_self_assignment" $createdStr | Safe}}
- {{ else }}
- {{$.i18n.Tr "repo.issues.remove_assignee_at" (.Poster.GetDisplayName|Escape) $createdStr | Safe}}
- {{ end }}
- </span>
- {{else}}
- <a class="ui avatar image" href="{{.Assignee.HomeLink}}">
- <img src="{{.Assignee.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Assignee.HomeLink}}">{{.Assignee.GetDisplayName}}</a>
- {{if eq .Poster.ID .AssigneeID}}
- {{$.i18n.Tr "repo.issues.self_assign_at" $createdStr | Safe}}
- {{else}}
- {{$.i18n.Tr "repo.issues.add_assignee_at" (.Poster.GetDisplayName|Escape) $createdStr | Safe}}
- {{end}}
- </span>
- {{end}}
- {{end}}
- </div>
- {{else if eq .Type 10}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-pencil"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.change_title_at" (.OldTitle|RenderEmoji) (.NewTitle|RenderEmoji) $createdStr | Safe}}
- </span>
- </div>
- {{else if eq .Type 11}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-git-branch"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.delete_branch_at" (.CommitSHA|Escape) $createdStr | Safe}}
- </span>
- </div>
- {{else if eq .Type 12}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-clock"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.start_tracking_history" $createdStr | Safe}}
- </span>
- </div>
- {{else if eq .Type 13}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-clock"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.stop_tracking_history" $createdStr | Safe}}
- </span>
- <div class="detail">
- {{svg "octicon-clock"}}
- <span class="text grey">{{.Content}}</span>
- </div>
- </div>
- {{else if eq .Type 14}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-clock"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.add_time_history" $createdStr | Safe}}
- </span>
- <div class="detail">
- {{svg "octicon-clock"}}
- <span class="text grey">{{.Content}}</span>
- </div>
- </div>
- {{else if eq .Type 15}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-clock"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.cancel_tracking_history" $createdStr | Safe}}
- </span>
- </div>
- {{else if eq .Type 16}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-clock"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.due_date_added" .Content $createdStr | Safe}}
- </span>
- </div>
- {{else if eq .Type 17}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-clock"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.due_date_modified" (.Content | ParseDeadline) $createdStr | Safe}}
- </span>
- </div>
- {{else if eq .Type 18}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-clock"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.due_date_remove" .Content $createdStr | Safe}}
- </span>
- </div>
- {{else if eq .Type 19}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-package-dependents"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.dependency.added_dependency" $createdStr | Safe}}
- </span>
- {{if .DependentIssue}}
- <div class="detail">
- {{svg "octicon-plus"}}
- <span class="text grey">
- <a href="{{.DependentIssue.HTMLURL}}">
- {{if eq .DependentIssue.RepoID .Issue.RepoID}}
- #{{.DependentIssue.Index}} {{.DependentIssue.Title}}
- {{else}}
- {{.DependentIssue.Repo.FullName}}#{{.DependentIssue.Index}} - {{.DependentIssue.Title}}
- {{end}}
- </a>
- </span>
- </div>
- {{end}}
- </div>
- {{else if eq .Type 20}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-package-dependents"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.dependency.removed_dependency" $createdStr | Safe}}
- </span>
- {{if .DependentIssue}}
- <div class="detail">
- <span class="text grey">{{svg "octicon-trashcan"}}</span>
- <span class="text grey">
- <a href="{{.DependentIssue.HTMLURL}}">
- {{if eq .DependentIssue.RepoID .Issue.RepoID}}
- #{{.DependentIssue.Index}} {{.DependentIssue.Title}}
- {{else}}
- {{.DependentIssue.Repo.FullName}}#{{.DependentIssue.Index}} - {{.DependentIssue.Title}}
- {{end}}
- </a>
- </span>
- </div>
- {{end}}
- </div>
- {{else if eq .Type 22}}
- <div class="timeline-item-group">
- <div class="timeline-item event" id="{{.HashTag}}">
- {{if .OriginalAuthor }}
- {{else}}
- <a class="timeline-avatar"{{if gt .Poster.ID 0}} href="{{.Poster.HomeLink}}"{{end}}>
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- {{end}}
- <span class="badge {{if eq .Review.Type 1}}green
- {{- else if eq .Review.Type 2}}grey
- {{- else if eq .Review.Type 3}}red
- {{- else}}grey{{end}}">{{svg (printf "octicon-%s" .Review.Type.Icon)}}</span>
- <span class="text grey">
- {{if .OriginalAuthor }}
- <span class="text black"><i class="fa {{MigrationIcon $.Repository.GetOriginalURLHostname}}" aria-hidden="true"></i> {{ .OriginalAuthor }}</span><span class="text grey"> {{if $.Repository.OriginalURL}}</span><span class="text migrate">({{$.i18n.Tr "repo.migrated_from" $.Repository.OriginalURL $.Repository.GetOriginalURLHostname | Safe }}){{end}}</span>
- {{else}}
- <a class="author"{{if gt .Poster.ID 0}} href="{{.Poster.HomeLink}}"{{end}}>{{.Poster.GetDisplayName}}</a>
- {{end}}
-
- {{if eq .Review.Type 1}}
- {{$.i18n.Tr "repo.issues.review.approve" $createdStr | Safe}}
- {{else if eq .Review.Type 2}}
- {{$.i18n.Tr "repo.issues.review.comment" $createdStr | Safe}}
- {{else if eq .Review.Type 3}}
- {{$.i18n.Tr "repo.issues.review.reject" $createdStr | Safe}}
- {{else}}
- {{$.i18n.Tr "repo.issues.review.comment" $createdStr | Safe}}
- {{end}}
- </span>
- </div>
- {{if .Content}}
- <div class="timeline-item comment">
- <div class="content">
- <div class="ui top attached header arrow-top">
- <span class="text grey">
- {{if .OriginalAuthor }}
- <span class="text black"><i class="fa {{MigrationIcon $.Repository.GetOriginalURLHostname}}" aria-hidden="true"></i> {{ .OriginalAuthor }}</span><span class="text grey"> {{if $.Repository.OriginalURL}}</span><span class="text migrate">({{$.i18n.Tr "repo.migrated_from" $.Repository.OriginalURL $.Repository.GetOriginalURLHostname | Safe }}){{end}}</span>
- {{else}}
- <a class="author"{{if gt .Poster.ID 0}} href="{{.Poster.HomeLink}}"{{end}}>{{.Poster.GetDisplayName}}</a>
- {{end}}
-
- {{$.i18n.Tr "repo.issues.review.left_comment" | Safe}}
- </span>
- </div>
- <div class="ui attached segment">
- <div class="render-content markdown">
- {{if .RenderedContent}}
- {{.RenderedContent|Str2html}}
- {{else}}
- <span class="no-content">{{$.i18n.Tr "repo.issues.no_content"}}</span>
- {{end}}
- </div>
- </div>
- </div>
- </div>
- {{end}}
-
- {{if .Review.CodeComments}}
- <div class="timeline-item event">
- {{ range $filename, $lines := .Review.CodeComments}}
- {{range $line, $comms := $lines}}
- <div class="ui segments">
- <div class="ui segment">
- {{$invalid := (index $comms 0).Invalidated}}
- {{$resolved := (index $comms 0).IsResolved}}
- {{$resolveDoer := (index $comms 0).ResolveDoer}}
- {{$isNotPending := (not (eq (index $comms 0).Review.Type 0))}}
- {{if or $invalid $resolved}}
- <button id="show-outdated-{{(index $comms 0).ID}}" data-comment="{{(index $comms 0).ID}}" class="{{if not $resolved}}hide {{end}}ui compact right labeled button show-outdated">
- {{svg "octicon-unfold"}}
- {{if $resolved}}
- {{$.i18n.Tr "repo.issues.review.show_resolved"}}
- {{else}}
- {{$.i18n.Tr "repo.issues.review.show_outdated"}}
- {{end}}
- </button>
- <button id="hide-outdated-{{(index $comms 0).ID}}" data-comment="{{(index $comms 0).ID}}" class="{{if $resolved}}hide {{end}}ui compact right labeled button hide-outdated">
- {{svg "octicon-fold"}}
- {{if $resolved}}
- {{$.i18n.Tr "repo.issues.review.hide_resolved"}}
- {{else}}
- {{$.i18n.Tr "repo.issues.review.hide_outdated"}}
- {{end}}
- </button>
- {{end}}
- <a href="{{(index $comms 0).CodeCommentURL}}" class="file-comment">{{$filename}}</a>
- {{if $invalid }}
- <span class="ui label basic small yellow">
- {{$.i18n.Tr "repo.issues.review.outdated"}}
- </span>
- {{end}}
- </div>
- {{$diff := (CommentMustAsDiff (index $comms 0))}}
- {{if $diff}}
- {{$file := (index $diff.Files 0)}}
- <div id="code-preview-{{(index $comms 0).ID}}" class="ui table segment{{if $resolved}} hide{{end}}">
- <div class="diff-file-box diff-box file-content {{TabSizeClass $.Editorconfig $file.Name}}">
- <div class="file-body file-code code-view code-diff code-diff-unified">
- <table>
- <tbody>
- {{template "repo/diff/section_unified" dict "file" $file "root" $}}
- </tbody>
- </table>
- </div>
- </div>
- </div>
- {{end}}
- <div id="code-comments-{{(index $comms 0).ID}}" class="ui segment{{if $resolved}} hide{{end}}">
- <div class="ui comments">
- {{range $comms}}
- {{ $createdSubStr:= TimeSinceUnix .CreatedUnix $.Lang }}
- <div class="comment" id="{{.HashTag}}">
- {{if not .OriginalAuthor }}
- <a class="avatar">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- {{end}}
- <div class="content">
- <div class="code-comment-content">
- <span class="text grey">
- {{if .OriginalAuthor }}
- <span class="text black"><i class="fa {{MigrationIcon $.Repository.GetOriginalURLHostname}}" aria-hidden="true"></i> {{ .OriginalAuthor }}</span><span class="text grey"> {{if $.Repository.OriginalURL}}</span><span class="text migrate">({{$.i18n.Tr "repo.migrated_from" $.Repository.OriginalURL $.Repository.GetOriginalURLHostname | Safe }}){{end}}</span>
- {{else}}
- <a class="author"{{if gt .Poster.ID 0}} href="{{.Poster.HomeLink}}"{{end}}>{{.Poster.GetDisplayName}}</a>
- {{end}}
- {{$.i18n.Tr "repo.issues.commented_at" .HashTag $createdSubStr | Safe}}
- </span>
- <div class="text">
- <div class="render-content markdown">
- {{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>
- </div>
- </div>
- </div>
- {{end}}
- </div>
- {{template "repo/diff/comment_form_datahandler" dict "hidden" true "reply" (index $comms 0).ReviewID "root" $ "comment" (index $comms 0)}}
-
- {{if and $.CanMarkConversation $isNotPending}}
- <button class="ui tiny button resolve-conversation" data-action="{{if not $resolved}}Resolve{{else}}UnResolve{{end}}" data-comment-id="{{(index $comms 0).ID}}" data-update-url="{{$.RepoLink}}/issues/resolve_conversation" >
- {{if $resolved}}
- {{$.i18n.Tr "repo.issues.review.un_resolve_conversation"}}
- {{else}}
- {{$.i18n.Tr "repo.issues.review.resolve_conversation"}}
- {{end}}
- </button>
- {{end}}
-
- {{if $resolved}}
- <span class="ui grey text"><b>{{$resolveDoer.Name}}</b> {{$.i18n.Tr "repo.issues.review.resolved_by"}}</span>
- {{end}}
- </div>
- </div>
- {{end}}
- {{end}}
- </div>
- {{end}}
- </div>
- {{else if eq .Type 23}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-lock"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- {{ if .Content }}
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.lock_with_reason" .Content $createdStr | Safe}}
- </span>
- {{ else }}
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.lock_no_reason" $createdStr | Safe}}
- </span>
- {{ end }}
- </div>
- {{else if eq .Type 24}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-key"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.unlock_comment" $createdStr | Safe}}
- </span>
- </div>
- {{else if eq .Type 25}}
- <div class="timeline-item event">
- <span class="badge">{{svg "octicon-git-branch"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a href="{{.Poster.HomeLink}}">{{.Poster.Name}}</a>
- {{$.i18n.Tr "repo.pulls.change_target_branch_at" (.OldRef|Escape) (.NewRef|Escape) $createdStr | Safe}}
- </span>
- </div>
- {{else if eq .Type 26}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-clock"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{$.i18n.Tr "repo.issues.del_time_history" $createdStr | Safe}}
- </span>
- <div class="detail">
- {{svg "octicon-clock"}}
- <span class="text grey">{{.Content}}</span>
- </div>
- </div>
- {{else if eq .Type 27}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-eye"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{if (gt .AssigneeID 0)}}
- {{if .RemovedAssignee}}
- {{if eq .PosterID .AssigneeID}}
- {{$.i18n.Tr "repo.issues.review.remove_review_request_self" $createdStr | Safe}}
- {{else}}
- {{$.i18n.Tr "repo.issues.review.remove_review_request" (.Assignee.GetDisplayName|Escape) $createdStr | Safe}}
- {{end}}
- {{else}}
- {{$.i18n.Tr "repo.issues.review.add_review_request" (.Assignee.GetDisplayName|Escape) $createdStr | Safe}}
- {{end}}
- {{else}}
- {{if .RemovedAssignee}}
- {{$.i18n.Tr "repo.issues.review.remove_review_request" (.AssigneeTeam.Name|Escape) $createdStr | Safe}}
- {{else}}
- {{$.i18n.Tr "repo.issues.review.add_review_request" (.AssigneeTeam.Name|Escape) $createdStr | Safe}}
- {{end}}
- {{end}}
- </span>
- </div>
- {{else if and (eq .Type 29) (or (gt .CommitsNum 0) .IsForcePush)}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-repo-push"}}</span>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{ if .IsForcePush }}
- {{$.i18n.Tr "repo.issues.force_push_codes" $.Issue.PullRequest.HeadBranch (ShortSha .OldCommit) ($.Issue.Repo.CommitLink .OldCommit) (ShortSha .NewCommit) ($.Issue.Repo.CommitLink .NewCommit) $createdStr | Safe}}
- {{else}}
- {{$.i18n.Tr (TrN $.i18n.Lang .Commits.Len "repo.issues.push_commit_1" "repo.issues.push_commits_n") .Commits.Len $createdStr | Safe}}
- {{end}}
- </span>
- </div>
- {{if not .IsForcePush}}
- {{template "repo/commits_list_small" dict "comment" . "root" $}}
- {{end}}
- {{else if eq .Type 30}}
- {{if not $.UnitProjectsGlobalDisabled}}
- <div class="timeline-item event" id="{{.HashTag}}">
- <span class="badge">{{svg "octicon-project"}}</span>
- <a class="ui avatar image" href="{{.Poster.HomeLink}}">
- <img src="{{.Poster.RelAvatarLink}}">
- </a>
- <span class="text grey">
- <a class="author" href="{{.Poster.HomeLink}}">{{.Poster.GetDisplayName}}</a>
- {{if gt .OldProjectID 0}}
- {{if gt .ProjectID 0}}
- {{$.i18n.Tr "repo.issues.change_project_at" (.OldProject.Title|Escape) (.Project.Title|Escape) $createdStr | Safe}}
- {{else}}
- {{$.i18n.Tr "repo.issues.remove_project_at" (.OldProject.Title|Escape) $createdStr | Safe}}
- {{end}}
- {{else if gt .ProjectID 0}}
- {{$.i18n.Tr "repo.issues.add_project_at" (.Project.Title|Escape) $createdStr | Safe}}
- {{end}}
- </span>
- </div>
- {{end}}
- {{end}}
- {{end}}
|