@@ -12,6 +12,8 @@ import (
12
12
"code.gitea.io/gitea/modules/git"
13
13
code_indexer "code.gitea.io/gitea/modules/indexer/code"
14
14
"code.gitea.io/gitea/modules/setting"
15
+ "code.gitea.io/gitea/modules/templates"
16
+ "code.gitea.io/gitea/routers/common"
15
17
"code.gitea.io/gitea/services/context"
16
18
)
17
19
@@ -29,18 +31,9 @@ func indexSettingToGitGrepPathspecList() (list []string) {
29
31
30
32
// Search render repository search page
31
33
func Search (ctx * context.Context ) {
32
- language := ctx .FormTrim ("l" )
33
- keyword := ctx .FormTrim ("q" )
34
-
35
- isFuzzy := ctx .FormOptionalBool ("fuzzy" ).ValueOrDefault (true )
36
-
37
- ctx .Data ["Keyword" ] = keyword
38
- ctx .Data ["Language" ] = language
39
- ctx .Data ["IsFuzzy" ] = isFuzzy
40
34
ctx .Data ["PageIsViewCode" ] = true
41
- ctx .Data ["IsRepoIndexerEnabled" ] = setting .Indexer .RepoIndexerEnabled
42
-
43
- if keyword == "" {
35
+ prepareSearch := common .PrepareCodeSearch (ctx )
36
+ if prepareSearch .Keyword == "" {
44
37
ctx .HTML (http .StatusOK , tplSearch )
45
38
return
46
39
}
@@ -57,9 +50,9 @@ func Search(ctx *context.Context) {
57
50
var err error
58
51
total , searchResults , searchResultLanguages , err = code_indexer .PerformSearch (ctx , & code_indexer.SearchOptions {
59
52
RepoIDs : []int64 {ctx .Repo .Repository .ID },
60
- Keyword : keyword ,
61
- IsKeywordFuzzy : isFuzzy ,
62
- Language : language ,
53
+ Keyword : prepareSearch . Keyword ,
54
+ IsKeywordFuzzy : prepareSearch . IsFuzzy ,
55
+ Language : prepareSearch . Language ,
63
56
Paginator : & db.ListOptions {
64
57
Page : page ,
65
58
PageSize : setting .UI .RepoSearchPagingNum ,
@@ -75,9 +68,9 @@ func Search(ctx *context.Context) {
75
68
ctx .Data ["CodeIndexerUnavailable" ] = ! code_indexer .IsAvailable (ctx )
76
69
}
77
70
} else {
78
- res , err := git .GrepSearch (ctx , ctx .Repo .GitRepo , keyword , git.GrepOptions {
71
+ res , err := git .GrepSearch (ctx , ctx .Repo .GitRepo , prepareSearch . Keyword , git.GrepOptions {
79
72
ContextLineNumber : 1 ,
80
- IsFuzzy : isFuzzy ,
73
+ IsFuzzy : prepareSearch . IsFuzzy ,
81
74
RefName : git .RefNameFromBranch (ctx .Repo .BranchName ).String (), // BranchName should be default branch or the first existing branch
82
75
PathspecList : indexSettingToGitGrepPathspecList (),
83
76
})
0 commit comments