From 3d05d75f2d9d9d349a8f40e8f097f18408e0df1d Mon Sep 17 00:00:00 2001 From: Pete Matsyburka Date: Mon, 7 Jul 2025 07:36:27 +0300 Subject: [PATCH] fix search --- lib/search_entries.rb | 2 +- lib/submitters.rb | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/search_entries.rb b/lib/search_entries.rb index cbd9061c..9f8a605b 100644 --- a/lib/search_entries.rb +++ b/lib/search_entries.rb @@ -56,7 +56,7 @@ module SearchEntries end [sql, number, number.length > 1 ? number.delete_prefix('0') : number, keyword] - elsif keyword.match?(/[^\p{L}\d&@.\-]/) || keyword.match?(/\A['"].*['"]\z/) + elsif keyword.match?(/[^\p{L}\d&@.\-]/) || keyword.match?(/\A['"].*['"]\z/) || keyword.match?(/[.\-]{2,}/) ['tsvector @@ plainto_tsquery(?)', TextUtils.transliterate(keyword.downcase)] else keyword = TextUtils.transliterate(keyword.downcase).squish diff --git a/lib/submitters.rb b/lib/submitters.rb index d732120c..f1fcc814 100644 --- a/lib/submitters.rb +++ b/lib/submitters.rb @@ -53,7 +53,7 @@ module Submitters end [sql, number, weight, number.length > 1 ? number.delete_prefix('0') : number, weight] - elsif keyword.match?(/[^\p{L}\d&@.\-]/) + elsif keyword.match?(/[^\p{L}\d&@.\-]/) || keyword.match?(/[.\-]{2,}/) terms = TextUtils.transliterate(keyword.downcase).split(/\b/).map(&:squish).compact_blank.uniq if terms.size > 1