aboutsummaryrefslogtreecommitdiffstats
path: root/templates/repo/search.tmpl
blob: 5a02418a5ab65bdcbef2acdb23d19c4255dcf467 (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
{{template "base/head" .}}
<div class="page-content repository file list">
	{{template "repo/header" .}}
	<div class="ui container">
		<div class="ui repo-search">
			<form class="ui form ignore-dirty" method="get">
				<div class="ui fluid action input">
					<input name="q" value="{{.Keyword}}"{{if .CodeIndexerUnavailable }} disabled{{end}} placeholder="{{.locale.Tr "repo.search.search_repo"}}">
					<div class="ui dropdown selection{{if .CodeIndexerUnavailable }} disabled{{end}}">
						<input name="t" type="hidden"{{if .CodeIndexerUnavailable }} disabled{{end}} value="{{.queryType}}">{{svg "octicon-triangle-down" 14 "dropdown icon"}}
						<div class="text">{{.locale.Tr (printf "repo.search.%s" (or .queryType "fuzzy"))}}</div>
						<div class="menu transition hidden" tabindex="-1" style="display: block !important;">
							<div class="item" data-value="">{{.locale.Tr "repo.search.fuzzy"}}</div>
							<div class="item" data-value="match">{{.locale.Tr "repo.search.match"}}</div>
						</div>
					</div>
					<button class="ui icon button"{{if .CodeIndexerUnavailable }} disabled{{end}} type="submit">{{svg "octicon-search" 16}}</button>
				</div>
			</form>
		</div>
		{{if .CodeIndexerUnavailable }}
			<div class="ui error message">
				<p>{{$.locale.Tr "repo.search.code_search_unavailable"}}</p>
			</div>
		{{else if .Keyword}}
			<h3>
				{{.locale.Tr "repo.search.results" (.Keyword|Escape) (.RepoLink|Escape) (.RepoName|Escape) | Str2html }}
			</h3>
			{{if .SearchResults}}
				<div class="df ac fw">
					{{range $term := .SearchResultLanguages}}
					<a class="ui text-label df ac mr-1 my-1 {{if eq $.Language $term.Language}}primary {{end}}basic label" href="{{$.SourcePath}}/search?q={{$.Keyword}}{{if ne $.Language $term.Language}}&l={{$term.Language}}{{end}}{{if ne $.queryType ""}}&t={{$.queryType}}{{end}}">
						<i class="color-icon mr-3" style="background-color: {{$term.Color}}"></i>
						{{$term.Language}}
						<div class="detail">{{$term.Count}}</div>
					</a>
					{{end}}
				</div>
				<div class="repository search">
					{{range $result := .SearchResults}}
						<div class="diff-file-box diff-box file-content non-diff-file-content repo-search-result">
							<h4 class="ui top attached normal header">
								<span class="file">{{.Filename}}</span>
								<a class="ui basic tiny button" rel="nofollow" href="{{$.SourcePath}}/src/commit/{{PathEscape $result.CommitID}}/{{PathEscapeSegments .Filename}}">{{$.locale.Tr "repo.diff.view_file"}}</a>
							</h4>
							<div class="ui attached table segment">
								<div class="file-body file-code code-view">
									<table>
										<tbody>
											<tr>
												<td class="lines-num">
													{{range .LineNumbers}}
														<a href="{{$.SourcePath}}/src/commit/{{PathEscape $result.CommitID}}/{{PathEscapeSegments $result.Filename}}#L{{.}}"><span>{{.}}</span></a>
													{{end}}
												</td>
												<td class="lines-code chroma"><code class="code-inner">{{.FormattedLines | Safe}}</code></td>
											</tr>
										</tbody>
									</table>
								</div>
							</div>
							{{template "shared/searchbottom" dict "root" $ "result" .}}
						</div>
					{{end}}
				</div>
				{{template "base/paginate" .}}
			{{else}}
				<div>{{$.locale.Tr "repo.search.code_no_results"}}</div>
			{{end}}
		{{end}}
	</div>
</div>
{{template "base/footer" .}}