diff options
author | Ivan Tashkinov <ivantashkinov@gmail.com> | 2020-11-19 18:08:22 +0300 |
---|---|---|
committer | Ivan Tashkinov <ivantashkinov@gmail.com> | 2020-11-19 18:08:22 +0300 |
commit | fcad3e716ad8dc60bd3d94e5b2e0aa18af4c9376 (patch) | |
tree | 8ce8f5ecea08c1dcae686a4f2c12d7390d3c3e79 | |
parent | 6f9b03384fe50ce063e8fee3103a69dff298107b (diff) | |
download | pleroma-fcad3e716ad8dc60bd3d94e5b2e0aa18af4c9376.tar.gz |
[#2301] Quick fix: users with is_discoverable == false (default!) are included in search results.
-rw-r--r-- | lib/pleroma/user/search.ex | 8 | ||||
-rw-r--r-- | test/pleroma/user_search_test.exs | 5 |
2 files changed, 8 insertions, 5 deletions
diff --git a/lib/pleroma/user/search.ex b/lib/pleroma/user/search.ex index 2dab67211..b54111090 100644 --- a/lib/pleroma/user/search.ex +++ b/lib/pleroma/user/search.ex @@ -85,7 +85,7 @@ defmodule Pleroma.User.Search do |> base_query(following) |> filter_blocked_user(for_user) |> filter_invisible_users() - |> filter_discoverable_users() + |> filter_non_discoverable_users() |> filter_internal_users() |> filter_blocked_domains(for_user) |> fts_search(query_string) @@ -163,8 +163,10 @@ defmodule Pleroma.User.Search do from(q in query, where: q.invisible == false) end - defp filter_discoverable_users(query) do - from(q in query, where: q.is_discoverable == true) + defp filter_non_discoverable_users(query) do + # Note: commented out — can't do it with users being non-discoverable by default + # from(q in query, where: q.is_discoverable == true) + query end defp filter_internal_users(query) do diff --git a/test/pleroma/user_search_test.exs b/test/pleroma/user_search_test.exs index 31d787ffa..d5ab5a003 100644 --- a/test/pleroma/user_search_test.exs +++ b/test/pleroma/user_search_test.exs @@ -65,12 +65,13 @@ defmodule Pleroma.UserSearchTest do assert found_user.id == user.id end - test "excludes users when discoverable is false" do + # NOTE: as long as users are non-discoverable by default, we can't filter out most users: #2301 + test "does NOT exclude non-discoverable users from results (as long as it's the default)" do insert(:user, %{nickname: "john 3000", is_discoverable: false}) insert(:user, %{nickname: "john 3001"}) users = User.search("john") - assert Enum.count(users) == 1 + assert Enum.count(users) == 2 end test "excludes service actors from results" do |