From 859763ea02d49abc3ce90926effebc745bd8c97b Mon Sep 17 00:00:00 2001 From: multiple creatures Date: Tue, 10 Dec 2019 03:52:54 -0600 Subject: handle syntax for `tags:` as `tags: tag1 tag2 "tag3" ...` --- app/helpers/search_helper.rb | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/app/helpers/search_helper.rb b/app/helpers/search_helper.rb index 7abb2729d..100fdddb9 100644 --- a/app/helpers/search_helper.rb +++ b/app/helpers/search_helper.rb @@ -3,12 +3,17 @@ require 'sixarm_ruby_unaccent' module SearchHelper def expand_search_query(query) return '' if query.blank? + query = query.strip.downcase.unaccent + if query.include?(':') query_parts = query.split(':', 2) - if query_parts[0].in?(%w(tags subj text desc)) + if query_parts[0] == 'tags' + query = "^tags .*(#{query_parts[1].split.join('|')})" + elsif query_parts[0].in?(%w(subj text desc)) query = "^#{query_parts[0]} .*#{query_parts[1]}" end end - query.downcase.unaccent.gsub(/"(.*)"/, '\\y\1\\y') + + query.gsub(/"(.*)"/, '\\y\1\\y') end end -- cgit