0
0
Fork 0

Add type, limit, offset, min_id, max_id, account_id to search API (#10091)

* Add type, limit, offset, min_id, max_id, account_id to search API

Fix #8939

* Make the offset work on accounts and hashtags search as well

* Assure brakeman we are not doing mass assignment here

* Do not allow paginating unless a type is chosen

* Fix search query and index id field on statuses instead of created_at
This commit is contained in:
Eugen Rochko 2019-02-26 15:21:36 +01:00 committed by GitHub
parent ea58e31822
commit e7f20cc43f
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
11 changed files with 161 additions and 230 deletions

View file

@ -1,11 +1,12 @@
# frozen_string_literal: true
class AccountSearchService < BaseService
attr_reader :query, :limit, :options, :account
attr_reader :query, :limit, :offset, :options, :account
def call(query, limit, account = nil, options = {})
def call(query, account = nil, options = {})
@query = query.strip
@limit = limit
@limit = options[:limit].to_i
@offset = options[:offset].to_i
@options = options
@account = account
@ -83,11 +84,11 @@ class AccountSearchService < BaseService
end
def advanced_search_results
Account.advanced_search_for(terms_for_query, account, limit, options[:following])
Account.advanced_search_for(terms_for_query, account, limit, options[:following], offset)
end
def simple_search_results
Account.search_for(terms_for_query, limit)
Account.search_for(terms_for_query, limit, offset)
end
def terms_for_query