From 28fcf5c4bfe19dfb90363e201156ad68b7263f6d Mon Sep 17 00:00:00 2001 From: Alexis Reigel Date: Thu, 21 Feb 2019 20:26:20 +0100 Subject: use functional style for tags finder --- .../acts_as_taggable_on/tags_finder.rb | 38 +++++++++++----------- 1 file changed, 19 insertions(+), 19 deletions(-) (limited to 'app/finders') diff --git a/app/finders/autocomplete/acts_as_taggable_on/tags_finder.rb b/app/finders/autocomplete/acts_as_taggable_on/tags_finder.rb index 71dffb72dce..f38c187799c 100644 --- a/app/finders/autocomplete/acts_as_taggable_on/tags_finder.rb +++ b/app/finders/autocomplete/acts_as_taggable_on/tags_finder.rb @@ -10,34 +10,34 @@ module Autocomplete end def execute - @tags = ::ActsAsTaggableOn::Tag.all + tags = all_tags + tags = filter_by_name(tags) + limit(tags) + end - search! - limit! + private - @tags + def all_tags + ::ActsAsTaggableOn::Tag.all end - def search! - search = @params[:search] - - return unless search + def filter_by_name(tags) + return tags unless search + return tags.none if search.empty? - if search.empty? - @tags = ::ActsAsTaggableOn::Tag.none - return + if search.length >= Gitlab::SQL::Pattern::MIN_CHARS_FOR_PARTIAL_MATCHING + tags.named_like(search) + else + tags.named(search) end + end - @tags = - if search.length >= Gitlab::SQL::Pattern::MIN_CHARS_FOR_PARTIAL_MATCHING - @tags.named_like(search) - else - @tags.named(search) - end + def limit(tags) + tags.limit(LIMIT) # rubocop: disable CodeReuse/ActiveRecord end - def limit! - @tags = @tags.limit(LIMIT) # rubocop: disable CodeReuse/ActiveRecord + def search + @params[:search] end end end -- cgit v1.2.3