summaryrefslogtreecommitdiffstats
path: root/templates/repo/commits_list.tmpl
blob: c8c695e33203840d5cf3e06493cfe46e02a11969 (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
94
95
96
<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}}
							<a
								class="btn interact-bg tw-p-2"
								data-tooltip-content="{{ctx.Locale.Tr "repo.commits.view_path"}}"
								href="{{if $.FileName}}{{printf "%s/src/commit/%s/%s" $commitRepoLink (PathEscape .ID.String) (PathEscapeSegments $.FileName)}}{{else}}{{printf "%s/src/commit/%s" $commitRepoLink (PathEscape .ID.String)}}{{end}}">
								{{svg "octicon-file-code"}}
							</a>
							{{end}}
						</td>
					</tr>
				{{end}}
			</tbody>
		</table>
	</div>