diff options
author | Claire <claire.github-309c@sitedethib.com> | 2022-02-08 18:23:53 +0100 |
---|---|---|
committer | Claire <claire.github-309c@sitedethib.com> | 2022-02-08 18:23:53 +0100 |
commit | 692963d43beb5e66a86e15d63b5aa3eeca82f0a1 (patch) | |
tree | bc7319ae242a889bb1d05b7afdd365d78a43ac1d /app/controllers/activitypub | |
parent | b1983623aec8e0b066d115736d2151e0c74407fa (diff) | |
parent | b6d7726ecbc833abd00f6a9d36b24d9776cfe623 (diff) |
Merge branch 'main' into glitch-soc/merge-upstream
Diffstat (limited to 'app/controllers/activitypub')
-rw-r--r-- | app/controllers/activitypub/replies_controller.rb | 32 |
1 files changed, 23 insertions, 9 deletions
diff --git a/app/controllers/activitypub/replies_controller.rb b/app/controllers/activitypub/replies_controller.rb index fde6c861f..4ff7cfa08 100644 --- a/app/controllers/activitypub/replies_controller.rb +++ b/app/controllers/activitypub/replies_controller.rb @@ -63,15 +63,29 @@ class ActivityPub::RepliesController < ActivityPub::BaseController end def next_page - only_other_accounts = !(@replies&.last&.account_id == @account.id && @replies.size == DESCENDANTS_LIMIT) - - account_status_replies_url( - @account, - @status, - page: true, - min_id: only_other_accounts && !only_other_accounts? ? nil : @replies&.last&.id, - only_other_accounts: only_other_accounts - ) + if only_other_accounts? + # Only consider remote accounts + return nil if @replies.size < DESCENDANTS_LIMIT + + account_status_replies_url( + @account, + @status, + page: true, + min_id: @replies&.last&.id, + only_other_accounts: true + ) + else + # For now, we're serving only self-replies, but next page might be other accounts + next_only_other_accounts = @replies&.last&.account_id != @account.id || @replies.size < DESCENDANTS_LIMIT + + account_status_replies_url( + @account, + @status, + page: true, + min_id: next_only_other_accounts ? nil : @replies&.last&.id, + only_other_accounts: next_only_other_accounts + ) + end end def page_params |