diff options
author | Max Magorsch <arzano@gentoo.org> | 2020-04-28 22:16:17 +0200 |
---|---|---|
committer | Max Magorsch <arzano@gentoo.org> | 2020-04-28 22:16:17 +0200 |
commit | bcab6784a816fb3c2f327ccfaa89c25c5c7d1ec7 (patch) | |
tree | b298010cf2a8be69c6d18eb2fd700e960a1f8a00 | |
parent | Don't use the advanced search for suggestions (diff) | |
download | soko-bcab6784a816fb3c2f327ccfaa89c25c5c7d1ec7.tar.gz soko-bcab6784a816fb3c2f327ccfaa89c25c5c7d1ec7.tar.bz2 soko-bcab6784a816fb3c2f327ccfaa89c25c5c7d1ec7.zip |
Improve the search further
Signed-off-by: Max Magorsch <arzano@gentoo.org>
-rw-r--r-- | pkg/app/handler/packages/search.go | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/pkg/app/handler/packages/search.go b/pkg/app/handler/packages/search.go index f737682..30ab4d6 100644 --- a/pkg/app/handler/packages/search.go +++ b/pkg/app/handler/packages/search.go @@ -39,8 +39,9 @@ func Search(w http.ResponseWriter, r *http.Request) { func buildSearchQuery(searchString string) string { var searchClauses []string for _, searchTerm := range strings.Split(searchString, " "){ + searchTerm = strings.ReplaceAll(searchTerm, "*", "%") searchClauses = append(searchClauses, - "(ARRAY[atom, category, name] && ARRAY['" + searchTerm +"'] OR (maintainers @> '[{\"Name\": \"" + searchTerm + "\"}]' OR maintainers @> '[{\"Email\": \"" + searchTerm + "\"}]'))") + "( (category LIKE '" + searchTerm + "') OR (name LIKE '" + searchTerm + "') OR (atom LIKE '" + searchTerm + "') OR (maintainers @> '[{\"Name\": \"" + searchTerm + "\"}]' OR maintainers @> '[{\"Email\": \"" + searchTerm + "\"}]'))") } return strings.Join(searchClauses, " AND ") } |