diff options
author | lain <lain@soykaf.club> | 2019-02-22 12:02:51 +0100 |
---|---|---|
committer | lain <lain@soykaf.club> | 2019-02-22 12:02:51 +0100 |
commit | 62296f5a251e376bed5b234a66b20226dbd58419 (patch) | |
tree | bcf1d09061ae7080fd1ec75b1b4329756f3c82d9 /lib | |
parent | 5a4e2905fecfd21cf92f6b2844f15f5ee84b33f5 (diff) | |
download | pleroma-62296f5a251e376bed5b234a66b20226dbd58419.tar.gz |
Fix private post card handling.
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/web/activity_pub/activity_pub.ex | 2 | ||||
-rw-r--r-- | lib/pleroma/web/mastodon_api/mastodon_api_controller.ex | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/lib/pleroma/web/activity_pub/activity_pub.ex b/lib/pleroma/web/activity_pub/activity_pub.ex index 7e153f396..fb0b7b68e 100644 --- a/lib/pleroma/web/activity_pub/activity_pub.ex +++ b/lib/pleroma/web/activity_pub/activity_pub.ex @@ -943,7 +943,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do def visible_for_user?(activity, user) do x = [user.ap_id | user.following] - y = activity.data["to"] ++ (activity.data["cc"] || []) + y = [activity.actor] ++ activity.data["to"] ++ (activity.data["cc"] || []) visible_for_user?(activity, nil) || Enum.any?(x, &(&1 in y)) end diff --git a/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex b/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex index 60738301b..cf7458d5f 100644 --- a/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex +++ b/lib/pleroma/web/mastodon_api/mastodon_api_controller.ex @@ -1518,9 +1518,9 @@ defmodule Pleroma.Web.MastodonAPI.MastodonAPIController do end end - def status_card(conn, %{"id" => status_id}) do + def status_card(%{assigns: %{user: user}} = conn, %{"id" => status_id}) do with %Activity{} = activity <- Repo.get(Activity, status_id), - true <- ActivityPub.is_public?(activity) do + true <- ActivityPub.visible_for_user?(activity, user) do data = StatusView.render( "card.json", |