]> cat aescling's git repositories - mastodon.git/blob - app/services/search_service.rb
Fix reworked search
[mastodon.git] / app / services / search_service.rb
1 # frozen_string_literal: true
2
3 class SearchService < BaseService
4 def call(query, limit, resolve = false, account = nil)
5 results = { accounts: [], hashtags: [], statuses: [] }
6
7 return results if query.blank?
8
9 if query =~ /\Ahttps?:\/\//
10 resource = FetchRemoteResourceService.new.call(query)
11
12 results[:accounts] << resource if resource.is_a?(Account)
13 results[:statuses] << resource if resource.is_a?(Status)
14 else
15 results[:accounts] = AccountSearchService.new.call(query, limit, resolve, account)
16 results[:hashtags] = Tag.search_for(query.gsub(/\A#/, ''), limit) unless query.start_with?('@')
17 end
18
19 results
20 end
21 end
This page took 0.077757 seconds and 5 git commands to generate.