aboutsummaryrefslogtreecommitdiffstats
path: root/templates/repo/branch/list.tmpl
blob: ee844299ab69c1ee6ead2104ecf9ce6057a3efbf (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
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
{{template "base/head" .}}
<div role="main" aria-label="{{.Title}}" class="page-content ui repository branches">
	{{template "repo/header" .}}
	<div class="ui container">
		{{template "base/alert" .}}
		{{template "repo/sub_menu" .}}
		{{if .DefaultBranchBranch}}
			<h4 class="ui top attached header">
				{{.locale.Tr "repo.default_branch"}}
			</h4>

			<div class="ui attached table segment">
				<table class="ui very basic striped fixed table single line">
					<tbody>
						<tr>
							<td>
								{{if .DefaultBranchBranch.IsProtected}}
									{{svg "octicon-shield-lock"}}
								{{end}}
								<a href="{{.RepoLink}}/src/branch/{{PathEscapeSegments .DefaultBranch}}">{{.DefaultBranch}}</a>
								<p class="info df ac my-2">{{svg "octicon-git-commit" 16 "mr-2"}}<a href="{{.RepoLink}}/commit/{{PathEscape .DefaultBranchBranch.Commit.ID.String}}">{{ShortSha .DefaultBranchBranch.Commit.ID.String}}</a> · <span class="commit-message">{{RenderCommitMessage $.Context .DefaultBranchBranch.Commit.CommitMessage .RepoLink .Repository.ComposeMetas}}</span> · {{.locale.Tr "org.repo_updated"}} {{TimeSince .DefaultBranchBranch.Commit.Committer.When .locale}}</p>
							</td>
							<td class="right aligned overflow-visible">
								{{if and $.IsWriter (not $.Repository.IsArchived) (not .IsDeleted)}}
									<button class="ui basic jump button icon tooltip show-create-branch-modal" data-content="{{$.locale.Tr "repo.branch.new_branch_from" ($.DefaultBranch)}}" data-branch-from="{{$.DefaultBranch}}" data-branch-from-urlcomponent="{{PathEscapeSegments $.DefaultBranch}}" data-modal="#create-branch-modal" data-position="top right">
										{{svg "octicon-git-branch"}}
									</button>
								{{end}}
								{{if not $.DisableDownloadSourceArchives}}
									<button class="ui basic jump dropdown icon button tooltip" data-content="{{$.locale.Tr "repo.branch.download" ($.DefaultBranch)}}" data-position="top right">
										{{svg "octicon-download"}}
										<div class="menu">
											<a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.DefaultBranch}}.zip" rel="nofollow">{{svg "octicon-file-zip"}}&nbsp;ZIP</a>
											<a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments $.DefaultBranch}}.tar.gz" rel="nofollow">{{svg "octicon-file-zip"}}&nbsp;TAR.GZ</a>
										</div>
									</button>
								{{end}}
							</td>
						</tr>
					</tbody>
				</table>
			</div>
		{{end}}

		{{if gt (len .Branches) 1}}
			<h4 class="ui top attached header">
				{{.locale.Tr "repo.branches"}}
			</h4>
			<div class="ui attached table segment">
				<table class="ui very basic striped fixed table single line">
					<tbody>
						{{range .Branches}}
							{{if ne .Name $.DefaultBranch}}
								<tr>
									<td class="six wide">
									{{if .IsDeleted}}
										<s><a href="{{$.RepoLink}}/src/branch/{{PathEscapeSegments .Name}}">{{.Name}}</a></s>
										<p class="info">{{$.locale.Tr "repo.branch.deleted_by" .DeletedBranch.DeletedBy.Name}} {{TimeSinceUnix .DeletedBranch.DeletedUnix $.locale}}</p>
									{{else}}
										{{if .IsProtected}}
											{{svg "octicon-shield-lock"}}
										{{end}}
										<a href="{{$.RepoLink}}/src/branch/{{PathEscapeSegments .Name}}">{{.Name}}</a>
										<p class="info df ac my-2">{{svg "octicon-git-commit" 16 "mr-2"}}<a href="{{$.RepoLink}}/commit/{{PathEscape .Commit.ID.String}}">{{ShortSha .Commit.ID.String}}</a> · <span class="commit-message">{{RenderCommitMessage $.Context .Commit.CommitMessage $.RepoLink $.Repository.ComposeMetas}}</span> · {{$.locale.Tr "org.repo_updated"}} {{TimeSince .Commit.Committer.When $.locale}}</p>
									{{end}}
									</td>
									<td class="three wide ui">
										{{if and (not .IsDeleted) $.DefaultBranchBranch}}
										<div class="commit-divergence">
											<div class="bar-group">
												<div class="count count-behind">{{.CommitsBehind}}</div>
												<div class="bar bar-behind" style="width: {{percentage .CommitsBehind .CommitsBehind .CommitsAhead}}%"></div>
											</div>
											<div class="bar-group">
												<div class="count count-ahead">{{.CommitsAhead}}</div>
												<div class="bar bar-ahead" style="width: {{percentage .CommitsAhead .CommitsBehind .CommitsAhead}}%"></div>
											</div>
										</div>
										{{end}}
									</td>
									<td class="three wide right aligned">
										{{if not .LatestPullRequest}}
											{{if .IsIncluded}}
												<a class="ui tooltip orange large label" data-content="{{$.locale.Tr "repo.branch.included_desc"}}" data-position="top right">
													{{svg "octicon-git-pull-request"}} {{$.locale.Tr "repo.branch.included"}}
												</a>
											{{else if and (not .IsDeleted) $.AllowsPulls (gt .CommitsAhead 0)}}
											<a href="{{$.RepoLink}}/compare/{{PathEscapeSegments $.DefaultBranch}}...{{if ne $.Repository.Owner.Name $.Owner.Name}}{{PathEscape $.Owner.Name}}:{{end}}{{PathEscapeSegments .Name}}">
												<button id="new-pull-request" class="ui compact basic button mr-0">{{if $.CanPull}}{{$.locale.Tr "repo.pulls.compare_changes"}}{{else}}{{$.locale.Tr "action.compare_branch"}}{{end}}</button>
											</a>
											{{end}}
										{{else if and .LatestPullRequest.HasMerged .MergeMovedOn}}
											{{if and (not .IsDeleted) $.AllowsPulls (gt .CommitsAhead 0)}}
											<a href="{{$.RepoLink}}/compare/{{PathEscapeSegments $.DefaultBranch}}...{{if ne $.Repository.Owner.Name $.Owner.Name}}{{$.Owner.Name}}:{{end}}{{.Name | PathEscapeSegments}}">
												<button id="new-pull-request" class="ui compact basic button mr-0">{{if $.CanPull}}{{$.locale.Tr "repo.pulls.compare_changes"}}{{else}}{{$.locale.Tr "action.compare_branch"}}{{end}}</button>
											</a>
											{{end}}
										{{else}}
											<a href="{{.LatestPullRequest.Issue.HTMLURL}}" class="vm ref-issue">{{if not .LatestPullRequest.IsSameRepo}}{{.LatestPullRequest.BaseRepo.FullName}}{{end}}#{{.LatestPullRequest.Issue.Index}}</a>
											{{if .LatestPullRequest.HasMerged}}
												<a href="{{.LatestPullRequest.Issue.HTMLURL}}" class="ui text-label purple large label vm">{{svg "octicon-git-merge" 16 "mr-2"}}{{$.locale.Tr "repo.pulls.merged"}}</a>
											{{else if .LatestPullRequest.Issue.IsClosed}}
												<a href="{{.LatestPullRequest.Issue.HTMLURL}}" class="ui text-label red large label vm">{{svg "octicon-git-pull-request" 16 "mr-2"}}{{$.locale.Tr "repo.issues.closed_title"}}</a>
											{{else}}
												<a href="{{.LatestPullRequest.Issue.HTMLURL}}" class="ui text-label green large label vm">{{svg "octicon-git-pull-request" 16 "mr-2"}}{{$.locale.Tr "repo.issues.open_title"}}</a>
											{{end}}
										{{end}}
									</td>
									<td class="three wide right aligned overflow-visible">
										{{if and $.IsWriter (not $.Repository.IsArchived) (not .IsDeleted)}}
											<button class="ui basic jump button icon tooltip show-create-branch-modal" data-branch-from="{{.Name}}" data-branch-from-urlcomponent="{{PathEscapeSegments .Name}}" data-content="{{$.locale.Tr "repo.branch.new_branch_from" .Name}}" data-position="top right" data-modal="#create-branch-modal" data-name="{{.Name}}">
												{{svg "octicon-git-branch"}}
											</button>
										{{end}}
										{{if and (not .IsDeleted) (not $.DisableDownloadSourceArchives)}}
											<button class="ui basic jump dropdown icon button tooltip" data-content="{{$.locale.Tr "repo.branch.download" (.Name)}}" data-position="top right">
												{{svg "octicon-download"}}
												<div class="menu">
													<a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments .Name}}.zip" rel="nofollow">{{svg "octicon-file-zip"}}&nbsp;ZIP</a>
													<a class="item archive-link" href="{{$.RepoLink}}/archive/{{PathEscapeSegments .Name}}.tar.gz" rel="nofollow">{{svg "octicon-file-zip"}}&nbsp;TAR.GZ</a>
												</div>
											</button>
										{{end}}
										{{if and $.IsWriter (not $.IsMirror) (not $.Repository.IsArchived) (not .IsProtected)}}
											{{if .IsDeleted}}
												<button class="ui basic jump button icon tooltip undo-button" data-url="{{$.Link}}/restore?branch_id={{.DeletedBranch.ID}}&name={{.DeletedBranch.Name}}" data-content="{{$.locale.Tr "repo.branch.restore" (.Name)}}" data-position="top right">
													<span class="text blue">
														{{svg "octicon-reply"}}
													</span>
												</button>
											{{else}}
												<button class="ui basic jump button icon tooltip delete-button delete-branch-button" data-url="{{$.Link}}/delete?name={{.Name}}" data-content="{{$.locale.Tr "repo.branch.delete" (.Name)}}" data-position="top right" data-name="{{.Name}}">
													{{svg "octicon-trash"}}
												</button>
											{{end}}
										{{end}}
									</td>
								</tr>
							{{end}}
						{{end}}
					</tbody>
				</table>
			</div>
			{{template "base/paginate" .}}
		{{end}}
	</div>
</div>

<div class="ui small basic delete modal">
	<div class="ui icon header">
		{{svg "octicon-trash"}}
		{{.locale.Tr "repo.branch.delete_html"}} <span class="name"></span>
	</div>
	<div class="content">
		<p>{{.locale.Tr "repo.branch.delete_desc" | Str2html}}</p>
	</div>
	{{template "base/delete_modal_actions" .}}
</div>

<div class="ui small modal" id="create-branch-modal">
	<div class="header">
		{{.locale.Tr "repo.branch.new_branch"}}
	</div>
	<div class="content">
		<form class="ui form" id="create-branch-form" action="" data-base-action="{{.Link}}/_new/branch/" method="post">
			{{.CsrfTokenHtml}}
			<div class="field">
				<label>
					{{.locale.Tr "repo.branch.create_new_branch"}}
					<span class="text" id="modal-create-branch-from-span"></span>
				</label>
			</div>
			<div class="required field">
				<label for="new_branch_name">{{.locale.Tr "repo.branch.name"}}</label>
				<input id="new_branch_name" name="new_branch_name" required>
			</div>

			<div class="text right actions">
				<div class="ui cancel button">{{.locale.Tr "settings.cancel"}}</div>
				<button class="ui green button">{{.locale.Tr "repo.branch.confirm_create_branch"}}</button>
			</div>
		</form>
	</div>
</div>
{{template "base/footer" .}}