diff options
author | David Yip <yipdw@member.fsf.org> | 2017-12-06 15:40:59 -0600 |
---|---|---|
committer | David Yip <yipdw@member.fsf.org> | 2017-12-06 15:40:59 -0600 |
commit | f1cbea77a4a52929244198dcbde26d63d837489a (patch) | |
tree | 82645dbc9eec65f870ce7a211355deb6bdc29f29 /app/services/account_search_service.rb | |
parent | 21e28a5caa5e92165322c4127c89a6f88e68198a (diff) | |
parent | 8ca91cef45417947607079118b1af07c9774ae58 (diff) |
Merge remote-tracking branch 'personal/merge/tootsuite/master' into gs-master
Diffstat (limited to 'app/services/account_search_service.rb')
-rw-r--r-- | app/services/account_search_service.rb | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/app/services/account_search_service.rb b/app/services/account_search_service.rb index b0c663d02..a289ceac4 100644 --- a/app/services/account_search_service.rb +++ b/app/services/account_search_service.rb @@ -1,12 +1,12 @@ # frozen_string_literal: true class AccountSearchService < BaseService - attr_reader :query, :limit, :resolve, :account + attr_reader :query, :limit, :options, :account - def call(query, limit, resolve = false, account = nil) - @query = query - @limit = limit - @resolve = resolve + def call(query, limit, account = nil, options = {}) + @query = query + @limit = limit + @options = options @account = account search_service_results @@ -25,7 +25,7 @@ class AccountSearchService < BaseService end def resolving_non_matching_remote_account? - resolve && !exact_match && !domain_is_local? + options[:resolve] && !exact_match && !domain_is_local? end def search_results_and_exact_match @@ -58,12 +58,16 @@ class AccountSearchService < BaseService @_domain_is_local ||= TagManager.instance.local_domain?(query_domain) end + def search_from + options[:following] && account ? account.following : Account + end + def exact_match @_exact_match ||= begin if domain_is_local? - Account.find_local(query_username) + search_from.find_local(query_username) else - Account.find_remote(query_username, query_domain) + search_from.find_remote(query_username, query_domain) end end end @@ -79,7 +83,7 @@ class AccountSearchService < BaseService end def advanced_search_results - Account.advanced_search_for(terms_for_query, account, limit) + Account.advanced_search_for(terms_for_query, account, limit, options[:following]) end def simple_search_results |