diff options
Diffstat (limited to 'app/helpers')
-rw-r--r-- | app/helpers/search_helper.rb | 9 |
1 files 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 |