|
|
@@ -234,22 +234,23 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubController do |
|
|
|
def outbox(conn, %{"nickname" => nickname, "page" => page?} = params) |
|
|
|
when page? in [true, "true"] do |
|
|
|
with %User{} = user <- User.get_cached_by_nickname(nickname), |
|
|
|
{:ok, user} <- User.ensure_keys_present(user), |
|
|
|
activities <- |
|
|
|
(if params["max_id"] do |
|
|
|
ActivityPub.fetch_user_activities(user, nil, %{ |
|
|
|
"max_id" => params["max_id"], |
|
|
|
# This is a hack because postgres generates inefficient queries when filtering by 'Answer', |
|
|
|
# poll votes will be hidden by the visibility filter in this case anyway |
|
|
|
"include_poll_votes" => true, |
|
|
|
"limit" => 10 |
|
|
|
}) |
|
|
|
else |
|
|
|
ActivityPub.fetch_user_activities(user, nil, %{ |
|
|
|
"limit" => 10, |
|
|
|
"include_poll_votes" => true |
|
|
|
}) |
|
|
|
end) do |
|
|
|
{:ok, user} <- User.ensure_keys_present(user) do |
|
|
|
activities = |
|
|
|
if params["max_id"] do |
|
|
|
ActivityPub.fetch_user_activities(user, nil, %{ |
|
|
|
"max_id" => params["max_id"], |
|
|
|
# This is a hack because postgres generates inefficient queries when filtering by 'Answer', |
|
|
|
# poll votes will be hidden by the visibility filter in this case anyway |
|
|
|
"include_poll_votes" => true, |
|
|
|
"limit" => 10 |
|
|
|
}) |
|
|
|
else |
|
|
|
ActivityPub.fetch_user_activities(user, nil, %{ |
|
|
|
"limit" => 10, |
|
|
|
"include_poll_votes" => true |
|
|
|
}) |
|
|
|
end |
|
|
|
|
|
|
|
conn |
|
|
|
|> put_resp_content_type("application/activity+json") |
|
|
|
|> put_view(UserView) |
|
|
|