diff options
author | Eugen Rochko <eugen@zeonfederated.com> | 2020-02-08 17:29:40 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-02-08 17:29:40 +0100 |
commit | b686e275e7651532b2203083717d5ef88acb04b1 (patch) | |
tree | b40e9c0d639318b7d46fb1754ebb5ea65ae2a17c /app | |
parent | a64973aecff0595bd34a6e70393d471b8dbf1841 (diff) |
Fix unfiltered params error when generating ActivityPub tag pagination (#13049)
Diffstat (limited to 'app')
-rw-r--r-- | app/controllers/tags_controller.rb | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/app/controllers/tags_controller.rb b/app/controllers/tags_controller.rb index 77d5661b8..b0bc2f6b7 100644 --- a/app/controllers/tags_controller.rb +++ b/app/controllers/tags_controller.rb @@ -24,7 +24,7 @@ class TagsController < ApplicationController format.rss do expires_in 0, public: true - @statuses = HashtagQueryService.new.call(@tag, params.slice(:any, :all, :none)).limit(PAGE_SIZE) + @statuses = HashtagQueryService.new.call(@tag, filter_params).limit(PAGE_SIZE) @statuses = cache_collection(@statuses, Status) render xml: RSS::TagSerializer.render(@tag, @statuses) @@ -33,7 +33,7 @@ class TagsController < ApplicationController format.json do expires_in 3.minutes, public: public_fetch_mode? - @statuses = HashtagQueryService.new.call(@tag, params.slice(:any, :all, :none), current_account, params[:local]).paginate_by_max_id(PAGE_SIZE, params[:max_id]) + @statuses = HashtagQueryService.new.call(@tag, filter_params, current_account, params[:local]).paginate_by_max_id(PAGE_SIZE, params[:max_id]) @statuses = cache_collection(@statuses, Status) render json: collection_presenter, serializer: ActivityPub::CollectionSerializer, adapter: ActivityPub::Adapter, content_type: 'application/activity+json' @@ -57,10 +57,14 @@ class TagsController < ApplicationController def collection_presenter ActivityPub::CollectionPresenter.new( - id: tag_url(@tag, params.slice(:any, :all, :none)), + id: tag_url(@tag, filter_params), type: :ordered, size: @tag.statuses.count, items: @statuses.map { |s| ActivityPub::TagManager.instance.uri_for(s) } ) end + + def filter_params + params.slice(:any, :all, :none).permit(:any, :all, :none) + end end |