Commit 316fe20d authored by Sadposter's avatar Sadposter Committed by Hannah Ward

Make subscriptions the same direction as blocks

That being, user - subscribes to -> users, rather than
user - has subscribers -> users
parent 23c4f494
......@@ -1006,7 +1006,12 @@ def blocked_users(user),
do: Repo.all(from(u in User, where: u.ap_id in ^user.info.blocks))
def subscribed_users(user),
do: Repo.all(from(u in User, where: u.ap_id in ^user.info.subscriptions))
do:
Repo.all(
from(u in User,
where: fragment("?->'subscriptions' @> ?", u.info, ^user.ap_id)
)
)
def block_domain(user, domain) do
info_cng =
......
......@@ -336,10 +336,11 @@ def maybe_notify_mentioned_recipients(
def maybe_notify_mentioned_recipients(recipients, _), do: recipients
def maybe_notify_subscribers(
recipients,
%Activity{data: %{"actor" => actor, "type" => type}}
) when type == "Create" do
with %User{} = user <- User.get_by_ap_id(actor) do
recipients,
%Activity{data: %{"actor" => actor, "type" => type}}
)
when type == "Create" do
with %User{} = user <- User.get_by_ap_id(actor) do
subscriber_ids =
user
|> User.subscribed_users()
......
......@@ -279,7 +279,7 @@ def subscribe(%{assigns: %{user: user}} = conn, params) do
{:error, msg} ->
forbidden_json_reply(conn, msg)
end
end
end
def unsubscribe(%{assigns: %{user: user}} = conn, params) do
case TwitterAPI.unsubscribe(user, params) do
......@@ -287,7 +287,7 @@ def unsubscribe(%{assigns: %{user: user}} = conn, params) do
conn
|> put_view(UserView)
|> render("show.json", %{user: unsubscribed, for: user})
{:error, msg} ->
forbidden_json_reply(conn, msg)
end
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment