|
|
@@ -105,7 +105,14 @@ defmodule Pleroma.Web.ActivityPub.UserView do |
|
|
|
query = from(user in query, select: [:ap_id]) |
|
|
|
following = Repo.all(query) |
|
|
|
|
|
|
|
collection(following, "#{user.ap_id}/following", page, !user.info.hide_follows) |
|
|
|
total = |
|
|
|
if !user.info.hide_follows do |
|
|
|
length(following) |
|
|
|
else |
|
|
|
0 |
|
|
|
end |
|
|
|
|
|
|
|
collection(following, "#{user.ap_id}/following", page, !user.info.hide_follows, total) |
|
|
|
|> Map.merge(Utils.make_json_ld_header()) |
|
|
|
end |
|
|
|
|
|
|
@@ -114,10 +121,17 @@ defmodule Pleroma.Web.ActivityPub.UserView do |
|
|
|
query = from(user in query, select: [:ap_id]) |
|
|
|
following = Repo.all(query) |
|
|
|
|
|
|
|
total = |
|
|
|
if !user.info.hide_follows do |
|
|
|
length(following) |
|
|
|
else |
|
|
|
0 |
|
|
|
end |
|
|
|
|
|
|
|
%{ |
|
|
|
"id" => "#{user.ap_id}/following", |
|
|
|
"type" => "OrderedCollection", |
|
|
|
"totalItems" => length(following), |
|
|
|
"totalItems" => total, |
|
|
|
"first" => collection(following, "#{user.ap_id}/following", 1, !user.info.hide_follows) |
|
|
|
} |
|
|
|
|> Map.merge(Utils.make_json_ld_header()) |
|
|
@@ -128,7 +142,14 @@ defmodule Pleroma.Web.ActivityPub.UserView do |
|
|
|
query = from(user in query, select: [:ap_id]) |
|
|
|
followers = Repo.all(query) |
|
|
|
|
|
|
|
collection(followers, "#{user.ap_id}/followers", page, !user.info.hide_followers) |
|
|
|
total = |
|
|
|
if !user.info.hide_followers do |
|
|
|
length(followers) |
|
|
|
else |
|
|
|
0 |
|
|
|
end |
|
|
|
|
|
|
|
collection(followers, "#{user.ap_id}/followers", page, !user.info.hide_followers, total) |
|
|
|
|> Map.merge(Utils.make_json_ld_header()) |
|
|
|
end |
|
|
|
|
|
|
@@ -137,19 +158,24 @@ defmodule Pleroma.Web.ActivityPub.UserView do |
|
|
|
query = from(user in query, select: [:ap_id]) |
|
|
|
followers = Repo.all(query) |
|
|
|
|
|
|
|
total = |
|
|
|
if !user.info.hide_followers do |
|
|
|
length(followers) |
|
|
|
else |
|
|
|
0 |
|
|
|
end |
|
|
|
|
|
|
|
%{ |
|
|
|
"id" => "#{user.ap_id}/followers", |
|
|
|
"type" => "OrderedCollection", |
|
|
|
"totalItems" => length(followers), |
|
|
|
"first" => collection(followers, "#{user.ap_id}/followers", 1, !user.info.hide_followers) |
|
|
|
"totalItems" => total, |
|
|
|
"first" => |
|
|
|
collection(followers, "#{user.ap_id}/followers", 1, !user.info.hide_followers, total) |
|
|
|
} |
|
|
|
|> Map.merge(Utils.make_json_ld_header()) |
|
|
|
end |
|
|
|
|
|
|
|
def render("outbox.json", %{user: user, max_id: max_qid}) do |
|
|
|
# XXX: technically note_count is wrong for this, but it's better than nothing |
|
|
|
info = User.user_info(user) |
|
|
|
|
|
|
|
params = %{ |
|
|
|
"limit" => "10" |
|
|
|
} |
|
|
@@ -177,7 +203,6 @@ defmodule Pleroma.Web.ActivityPub.UserView do |
|
|
|
"id" => "#{iri}?max_id=#{max_id}", |
|
|
|
"type" => "OrderedCollectionPage", |
|
|
|
"partOf" => iri, |
|
|
|
"totalItems" => info.note_count, |
|
|
|
"orderedItems" => collection, |
|
|
|
"next" => "#{iri}?max_id=#{min_id}" |
|
|
|
} |
|
|
@@ -186,7 +211,6 @@ defmodule Pleroma.Web.ActivityPub.UserView do |
|
|
|
%{ |
|
|
|
"id" => iri, |
|
|
|
"type" => "OrderedCollection", |
|
|
|
"totalItems" => info.note_count, |
|
|
|
"first" => page |
|
|
|
} |
|
|
|
|> Map.merge(Utils.make_json_ld_header()) |
|
|
@@ -224,7 +248,6 @@ defmodule Pleroma.Web.ActivityPub.UserView do |
|
|
|
"id" => "#{iri}?max_id=#{max_id}", |
|
|
|
"type" => "OrderedCollectionPage", |
|
|
|
"partOf" => iri, |
|
|
|
"totalItems" => -1, |
|
|
|
"orderedItems" => collection, |
|
|
|
"next" => "#{iri}?max_id=#{min_id}" |
|
|
|
} |
|
|
@@ -233,7 +256,6 @@ defmodule Pleroma.Web.ActivityPub.UserView do |
|
|
|
%{ |
|
|
|
"id" => iri, |
|
|
|
"type" => "OrderedCollection", |
|
|
|
"totalItems" => -1, |
|
|
|
"first" => page |
|
|
|
} |
|
|
|
|> Map.merge(Utils.make_json_ld_header()) |
|
|
|