aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSadposter <hannah+pleroma@coffee-and-dreams.uk>2019-11-28 10:38:38 +0000
committerSadposter <hannah+pleroma@coffee-and-dreams.uk>2019-11-28 10:38:38 +0000
commitfa97eddf8a7e5c3a0ed51eff562d6592bd478b95 (patch)
tree5c68526915628e7100d253b53f137d866ae1d1be
parentcb656938ca85f44efc6d5a4d4c21050de0fca9f5 (diff)
downloadpleroma-fa97eddf8a7e5c3a0ed51eff562d6592bd478b95.tar.gz
make follows take precedence over domain blocks
-rw-r--r--lib/pleroma/user.ex2
-rw-r--r--test/user_test.exs10
2 files changed, 11 insertions, 1 deletions
diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex
index b18a4c6a5..6a97e1928 100644
--- a/lib/pleroma/user.ex
+++ b/lib/pleroma/user.ex
@@ -1020,7 +1020,7 @@ defmodule Pleroma.User do
do: Enum.member?(user.muted_notifications, ap_id)
def blocks?(%User{} = user, %User{} = target) do
- blocks_ap_id?(user, target) || blocks_domain?(user, target)
+ blocks_ap_id?(user, target) || (!User.following?(user, target) && blocks_domain?(user, target))
end
def blocks?(nil, _), do: false
diff --git a/test/user_test.exs b/test/user_test.exs
index 82e338e75..6a3820455 100644
--- a/test/user_test.exs
+++ b/test/user_test.exs
@@ -879,6 +879,16 @@ defmodule Pleroma.UserTest do
refute User.blocks?(user, collateral_user)
end
+
+ test "follows take precedence over domain blocks" do
+ user = insert(:user)
+ good_eggo = insert(:user, %{ap_id: "https://meanies.social/user/cuteposter"})
+
+ {:ok, user} = User.block_domain(user, "meanies.social")
+ {:ok, user} = User.follow(user, good_eggo)
+
+ refute User.blocks?(user, good_eggo)
+ end
end
describe "blocks_import" do