From 4d26dc221250e2da0258c41bbb37f50964c3f2d9 Mon Sep 17 00:00:00 2001 From: Yamagishi Kazutoshi Date: Thu, 9 Feb 2023 23:26:52 +0900 Subject: [PATCH] Revert "Remove posts count and last posts from ActivityPub representation of hashtag collections (#23460)" This reverts commit 832595d1e79f9c185efd6d18741f295745ee536a. --- app/controllers/tags_controller.rb | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/app/controllers/tags_controller.rb b/app/controllers/tags_controller.rb index 750e15fa31..65017acba3 100644 --- a/app/controllers/tags_controller.rb +++ b/app/controllers/tags_controller.rb @@ -11,7 +11,7 @@ class TagsController < ApplicationController before_action :authenticate_user!, if: :whitelist_mode? before_action :set_local before_action :set_tag - before_action :set_statuses, if: -> { request.format == :rss } + before_action :set_statuses before_action :set_instance_presenter skip_before_action :require_functional!, unless: :whitelist_mode? @@ -44,7 +44,12 @@ class TagsController < ApplicationController end def set_statuses - @statuses = cache_collection(TagFeed.new(@tag, nil, local: @local).get(limit_param), Status) + case request.format&.to_sym + when :json + @statuses = cache_collection(TagFeed.new(@tag, current_account, local: @local).get(PAGE_SIZE, params[:max_id], params[:since_id], params[:min_id]), Status) + when :rss + @statuses = cache_collection(TagFeed.new(@tag, nil, local: @local).get(limit_param), Status) + end end def set_instance_presenter @@ -59,6 +64,8 @@ class TagsController < ApplicationController ActivityPub::CollectionPresenter.new( id: tag_url(@tag), type: :ordered, + size: @tag.statuses.count, + items: @statuses.map { |status| ActivityPub::TagManager.instance.uri_for(status) } ) end end