diff --git a/app/models/artist_commentary.rb b/app/models/artist_commentary.rb index 8d980208f..fea1c48b4 100644 --- a/app/models/artist_commentary.rb +++ b/app/models/artist_commentary.rb @@ -29,12 +29,7 @@ class ArtistCommentary < ApplicationRecord module SearchMethods def text_matches(query) - query = "*#{query}*" unless query =~ /\*/ - - where_ilike(:original_title, query) - .or(where_ilike(:original_description, query)) - .or(where_ilike(:translated_title, query)) - .or(where_ilike(:translated_description, query)) + where_text_matches(%i[original_title original_description translated_title translated_description], query) end def search(params) diff --git a/app/models/artist_commentary_version.rb b/app/models/artist_commentary_version.rb index cbd85d451..46a6da6b5 100644 --- a/app/models/artist_commentary_version.rb +++ b/app/models/artist_commentary_version.rb @@ -4,21 +4,9 @@ class ArtistCommentaryVersion < ApplicationRecord belongs_to :post belongs_to_updater - def self.text_matches(query) - query = "*#{query}*" unless query =~ /\*/ - - where_ilike(:original_title, query) - .or(where_ilike(:original_description, query)) - .or(where_ilike(:translated_title, query)) - .or(where_ilike(:translated_description, query)) - end - def self.search(params) q = search_attributes(params, :id, :created_at, :updated_at, :original_title, :original_description, :translated_title, :translated_description, :post, :updater) - - if params[:text_matches].present? - q = q.text_matches(params[:text_matches]) - end + q = q.where_text_matches(%i[original_title original_description translated_title translated_description], params[:text_matches]) q.apply_default_order(params) end