summaryrefslogtreecommitdiffstats
path: root/app/controllers/activitypub
diff options
context:
space:
mode:
authorThibG <thib@sitedethib.com>2020-09-02 18:42:50 +0200
committerGitHub <noreply@github.com>2020-09-02 18:42:50 +0200
commitabee40b2322f191ce5da040c60cea1b0f09eee78 (patch)
treeeb03d30c1f272a65f779a4a7c901b9ab3af036df /app/controllers/activitypub
parent33ad850c982bbe03214e2e2870751920721c23af (diff)
Add outbox attribute to instance actor (#14721)
It's not useful for now, but it's required by ActivityPub
Diffstat (limited to 'app/controllers/activitypub')
-rw-r--r--app/controllers/activitypub/outboxes_controller.rb20
1 files changed, 16 insertions, 4 deletions
diff --git a/app/controllers/activitypub/outboxes_controller.rb b/app/controllers/activitypub/outboxes_controller.rb
index c33c15255e1..e066860bfed 100644
--- a/app/controllers/activitypub/outboxes_controller.rb
+++ b/app/controllers/activitypub/outboxes_controller.rb
@@ -20,9 +20,9 @@ class ActivityPub::OutboxesController < ActivityPub::BaseController
def outbox_presenter
if page_requested?
ActivityPub::CollectionPresenter.new(
- id: account_outbox_url(@account, page_params),
+ id: outbox_url(page_params),
type: :ordered,
- part_of: account_outbox_url(@account),
+ part_of: outbox_url,
prev: prev_page,
next: next_page,
items: @statuses
@@ -32,12 +32,20 @@ class ActivityPub::OutboxesController < ActivityPub::BaseController
id: account_outbox_url(@account),
type: :ordered,
size: @account.statuses_count,
- first: account_outbox_url(@account, page: true),
- last: account_outbox_url(@account, page: true, min_id: 0)
+ first: outbox_url(page: true),
+ last: outbox_url(page: true, min_id: 0)
)
end
end
+ def outbox_url(**kwargs)
+ if params[:account_username].present?
+ account_outbox_url(@account, **kwargs)
+ else
+ instance_actor_outbox_url(**kwargs)
+ end
+ end
+
def next_page
account_outbox_url(@account, page: true, max_id: @statuses.last.id) if @statuses.size == LIMIT
end
@@ -65,4 +73,8 @@ class ActivityPub::OutboxesController < ActivityPub::BaseController
def page_params
{ page: true, max_id: params[:max_id], min_id: params[:min_id] }.compact
end
+
+ def set_account
+ @account = params[:account_username].present? ? Account.find_local!(username_param) : Account.representative
+ end
end