aboutsummaryrefslogtreecommitdiffstats
path: root/templates/repo/commits_list.tmpl
blob: bb5d2a03947785ccdbbd11deab1380da71c0cdb1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
<div class="ui attached table segment commit-table">
	<table class="ui very basic striped table unstackable" id="commits-table">
		<thead>
			<tr>
				<th class="three wide">{{ctx.Locale.Tr "repo.commits.author"}}</th>
				<th class="two wide sha">{{StringUtils.ToUpper $.Repository.ObjectFormatName}}</th>
				<th class="eight wide message">{{ctx.Locale.Tr "repo.commits.message"}}</th>
				<th class="two wide right aligned">{{ctx.Locale.Tr "repo.commits.date"}}</th>
				<th class="one wide"></th>
			</tr>
		</thead>
		<tbody class="commit-list">
			{{$commitRepoLink := $.RepoLink}}{{if $.CommitRepoLink}}{{$commitRepoLink = $.CommitRepoLink}}{{end}}
			{{range .Commits}}
				<tr>
					<td class="author">
						<div class="tw-flex">
							{{$userName := .Author.Name}}
							{{if .User}}
								{{if and .User.FullName DefaultShowFullName}}
									{{$userName = .User.FullName}}
								{{end}}
								{{ctx.AvatarUtils.Avatar .User 28 "tw-mr-2"}}<a class="muted author-wrapper" href="{{.User.HomeLink}}">{{$userName}}</a>
							{{else}}
								{{ctx.AvatarUtils.AvatarByEmail .Author.Email .Author.Name 28 "tw-mr-2"}}
								<span class="author-wrapper">{{$userName}}</span>
							{{end}}
						</div>
					</td>
					<td class="sha">
						{{$class := "ui sha label"}}
						{{if .Signature}}
							{{$class = (print $class " isSigned")}}
							{{if .Verification.Verified}}
								{{if eq .Verification.TrustStatus "trusted"}}
									{{$class = (print $class " isVerified")}}
								{{else if eq .Verification.TrustStatus "untrusted"}}
									{{$class = (print $class " isVerifiedUntrusted")}}
								{{else}}
									{{$class = (print $class " isVerifiedUnmatched")}}
								{{end}}
							{{else if .Verification.Warning}}
								{{$class = (print $class " isWarning")}}
							{{end}}
						{{end}}
						{{$commitShaLink := ""}}
						{{if $.PageIsWiki}}
							{{$commitShaLink = (printf "%s/wiki/commit/%s" $commitRepoLink (PathEscape .ID.String))}}
						{{else if $.PageIsPullCommits}}
							{{$commitShaLink = (printf "%s/pulls/%d/commits/%s" $commitRepoLink $.Issue.Index (PathEscape .ID.String))}}
						{{else if $.Reponame}}
							{{$commitShaLink = (printf "%s/commit/%s" $commitRepoLink (PathEscape .ID.String))}}
						{{end}}
						<a {{if $commitShaLink}}href="{{$commitShaLink}}"{{end}} class="{{$class}}">
							<span class="shortsha">{{ShortSha .ID.String}}</span>
							{{if .Signature}}{{template "repo/shabox_badge" dict "root" $ "verification" .Verification}}{{end}}
						</a>
					</td>
					<td class="message">
						<span class="message-wrapper">
						{{if $.PageIsWiki}}
							<span class="commit-summary {{if gt .ParentCount 1}} grey text{{end}}" title="{{.Summary}}">{{.Summary | RenderEmoji $.Context}}</span>
						{{else}}
							{{$commitLink:= printf "%s/commit/%s" $commitRepoLink (PathEscape .ID.String)}}
							<span class="commit-summary {{if gt .ParentCount 1}} grey text{{end}}" title="{{.Summary}}">{{RenderCommitMessageLinkSubject $.Context .Message $commitLink ($.Repository.ComposeMetas ctx)}}</span>
						{{end}}
						</span>
						{{if IsMultilineCommitMessage .Message}}
						<button class="ui button js-toggle-commit-body ellipsis-button" aria-expanded="false">...</button>
						{{end}}
						{{template "repo/commit_statuses" dict "Status" .Status "Statuses" .Statuses}}
						{{if IsMultilineCommitMessage .Message}}
						<pre class="commit-body tw-hidden">{{RenderCommitBody $.Context .Message ($.Repository.ComposeMetas ctx)}}</pre>
						{{end}}
					</td>
					{{if .Committer}}
						<td class="text right aligned">{{TimeSince .Committer.When ctx.Locale}}</td>
					{{else}}
						<td class="text right aligned">{{TimeSince .Author.When ctx.Locale}}</td>
					{{end}}
					<td class="text right aligned tw-py-0">
						<button class="btn interact-bg tw-p-2" data-tooltip-content="{{ctx.Locale.Tr "copy_hash"}}" data-clipboard-text="{{.ID}}">{{svg "octicon-copy"}}</button>
						{{if not $.PageIsWiki}}{{/* at the moment, wiki doesn't support "view at history point*/}}
							{{$viewCommitLink := printf "%s/src/commit/%s" $commitRepoLink (PathEscape .ID.String)}}
							{{if $.FileName}}{{$viewCommitLink = printf "%s/%s" $viewCommitLink (PathEscapeSegments $.FileName)}}{{end}}
							<a class="btn interact-bg tw-p-2" data-tooltip-content="{{ctx.Locale.Tr "repo.commits.view_path"}}" href="{{$viewCommitLink}}">{{svg "octicon-file-code"}}</a>
						{{end}}
					</td>
				</tr>
			{{end}}
		</tbody>
	</table>
</div>