From 4bf656f42553a663d629c8ce1480d084816683f2 Mon Sep 17 00:00:00 2001 From: Sergei Tsoganov Date: Thu, 6 Apr 2023 14:20:17 +0300 Subject: [PATCH] Fixed partial search formatter --- app/services/partial_search_formatter.rb | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/app/services/partial_search_formatter.rb b/app/services/partial_search_formatter.rb index 720b3dc8e..aa783dc81 100644 --- a/app/services/partial_search_formatter.rb +++ b/app/services/partial_search_formatter.rb @@ -3,15 +3,23 @@ class PartialSearchFormatter search_params = params.deep_dup search_params.each do |key, value| - next unless key.include?('matches') && value.present? + next unless should_format?(key, value) - if value =~ /\A\*.*\*\z/ - search_params[key] = value.gsub(/\A\*|\*\z/, '') - else - search_params[key] = "%#{value}%" - end + search_params[key] = format_value(value) end search_params end + + def self.should_format?(key, value) + key.include?('matches') && value.present? + end + + def self.format_value(value) + if value =~ /\A\*.*\*\z/ + value.gsub(/\A\*|\*\z/, '') + else + "%#{value}%" + end + end end