Filter searched toots to be consistent with blocking behaviors (#5383)
This commit is contained in:
		
							parent
							
								
									1c25853842
								
							
						
					
					
						commit
						58bca7b1e4
					
				| @ -1,6 +1,8 @@ | ||||
| # frozen_string_literal: true | ||||
| 
 | ||||
| class Api::V1::SearchController < Api::BaseController | ||||
|   include Authorization | ||||
| 
 | ||||
|   RESULTS_LIMIT = 5 | ||||
| 
 | ||||
|   before_action -> { doorkeeper_authorize! :read } | ||||
| @ -9,12 +11,24 @@ class Api::V1::SearchController < Api::BaseController | ||||
|   respond_to :json | ||||
| 
 | ||||
|   def index | ||||
|     @search = Search.new(search_results) | ||||
|     @search = Search.new(search) | ||||
|     render json: @search, serializer: REST::SearchSerializer | ||||
|   end | ||||
| 
 | ||||
|   private | ||||
| 
 | ||||
|   def search | ||||
|     search_results.tap do |search| | ||||
|       search[:statuses].keep_if do |status| | ||||
|         begin | ||||
|           authorize status, :show? | ||||
|         rescue Mastodon::NotPermittedError | ||||
|           false | ||||
|         end | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|   def search_results | ||||
|     SearchService.new.call( | ||||
|       params[:q], | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user