Method: Praxis::Extensions::AttributeFiltering::ActiveRecordFilterQueryBuilder.get_like_value

Defined in:
lib/praxis/extensions/attribute_filtering/active_record_filter_query_builder.rb

.get_like_value(value, fuzzy) ⇒ Object

Returns nil if the value was not a fuzzzy pattern



239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
# File 'lib/praxis/extensions/attribute_filtering/active_record_filter_query_builder.rb', line 239

def self.get_like_value(value, fuzzy)
  is_fuzzy = fuzzy.is_a?(Array) ? !fuzzy.compact.empty? : fuzzy
  return unless is_fuzzy

  raise MultiMatchWithFuzzyNotAllowedByAdapter unless value.is_a?(String)

  case fuzzy
  when :start_end
    "%#{value}%"
  when :start
    "%#{value}"
  when :end
    "#{value}%"
  end
end