summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIvan Tashkinov <ivantashkinov@gmail.com>2020-03-27 08:01:03 +0300
committerIvan Tashkinov <ivantashkinov@gmail.com>2020-03-27 08:01:03 +0300
commitdfbc05d4965a04a82d4c4c5b8842f4117757f30e (patch)
treea0a9f30a11d6b237e6c7561e15d09ed66d5c10fc
parent6b793d3f8336fcba5cac596f9e76d0274633f98d (diff)
Misc refactoring / tweaks (`ThreadMute.exists?/2`).
-rw-r--r--lib/pleroma/thread_mute.ex4
-rw-r--r--lib/pleroma/web/common_api/common_api.ex2
-rw-r--r--lib/pleroma/web/mastodon_api/views/notification_view.ex12
-rw-r--r--lib/pleroma/web/mastodon_api/views/status_view.ex7
-rw-r--r--test/web/mastodon_api/views/account_view_test.exs2
5 files changed, 14 insertions, 13 deletions
diff --git a/lib/pleroma/thread_mute.ex b/lib/pleroma/thread_mute.ex
index 5768e7711..be01d541d 100644
--- a/lib/pleroma/thread_mute.ex
+++ b/lib/pleroma/thread_mute.ex
@@ -68,8 +68,8 @@ defmodule Pleroma.ThreadMute do
|> Repo.delete_all()
end
- def check_muted(user_id, context) do
+ def exists?(user_id, context) do
query(user_id, context)
- |> Repo.all()
+ |> Repo.exists?()
end
end
diff --git a/lib/pleroma/web/common_api/common_api.ex b/lib/pleroma/web/common_api/common_api.ex
index 091011c6b..2646b9f7b 100644
--- a/lib/pleroma/web/common_api/common_api.ex
+++ b/lib/pleroma/web/common_api/common_api.ex
@@ -358,7 +358,7 @@ defmodule Pleroma.Web.CommonAPI do
def thread_muted?(%{id: nil} = _user, _activity), do: false
def thread_muted?(user, activity) do
- ThreadMute.check_muted(user.id, activity.data["context"]) != []
+ ThreadMute.exists?(user.id, activity.data["context"])
end
def report(user, %{"account_id" => account_id} = data) do
diff --git a/lib/pleroma/web/mastodon_api/views/notification_view.ex b/lib/pleroma/web/mastodon_api/views/notification_view.ex
index a809080fd..89f5734ff 100644
--- a/lib/pleroma/web/mastodon_api/views/notification_view.ex
+++ b/lib/pleroma/web/mastodon_api/views/notification_view.ex
@@ -98,27 +98,27 @@ defmodule Pleroma.Web.MastodonAPI.NotificationView do
}
}
- relationships_opt = %{relationships: opts[:relationships]}
+ render_opts = %{relationships: opts[:relationships]}
case mastodon_type do
"mention" ->
- put_status(response, activity, reading_user, relationships_opt)
+ put_status(response, activity, reading_user, render_opts)
"favourite" ->
- put_status(response, parent_activity_fn.(), reading_user, relationships_opt)
+ put_status(response, parent_activity_fn.(), reading_user, render_opts)
"reblog" ->
- put_status(response, parent_activity_fn.(), reading_user, relationships_opt)
+ put_status(response, parent_activity_fn.(), reading_user, render_opts)
"move" ->
- put_target(response, activity, reading_user, relationships_opt)
+ put_target(response, activity, reading_user, render_opts)
"follow" ->
response
"pleroma:emoji_reaction" ->
response
- |> put_status(parent_activity_fn.(), reading_user, relationships_opt)
+ |> put_status(parent_activity_fn.(), reading_user, render_opts)
|> put_emoji(activity)
_ ->
diff --git a/lib/pleroma/web/mastodon_api/views/status_view.ex b/lib/pleroma/web/mastodon_api/views/status_view.ex
index d36b9ee5c..440eef4ba 100644
--- a/lib/pleroma/web/mastodon_api/views/status_view.ex
+++ b/lib/pleroma/web/mastodon_api/views/status_view.ex
@@ -228,9 +228,10 @@ defmodule Pleroma.Web.MastodonAPI.StatusView do
end
thread_muted? =
- case activity.thread_muted? do
- thread_muted? when is_boolean(thread_muted?) -> thread_muted?
- nil -> (opts[:for] && CommonAPI.thread_muted?(opts[:for], activity)) || false
+ cond do
+ is_nil(opts[:for]) -> false
+ is_boolean(activity.thread_muted?) -> activity.thread_muted?
+ true -> CommonAPI.thread_muted?(opts[:for], activity)
end
attachment_data = object.data["attachment"] || []
diff --git a/test/web/mastodon_api/views/account_view_test.exs b/test/web/mastodon_api/views/account_view_test.exs
index ede62903f..0d1c3ecb3 100644
--- a/test/web/mastodon_api/views/account_view_test.exs
+++ b/test/web/mastodon_api/views/account_view_test.exs
@@ -186,7 +186,7 @@ defmodule Pleroma.Web.MastodonAPI.AccountViewTest do
describe "relationship" do
defp test_relationship_rendering(user, other_user, expected_result) do
- opts = %{user: user, target: other_user}
+ opts = %{user: user, target: other_user, relationships: nil}
assert expected_result == AccountView.render("relationship.json", opts)
relationships_opt = UserRelationship.view_relationships_option(user, [other_user])