aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMaksim Pechnikov <parallel588@gmail.com>2019-11-05 08:55:41 +0300
committerMaksim Pechnikov <parallel588@gmail.com>2019-11-05 08:55:41 +0300
commit62bc0657e7ad78a708c1bb6a82eb98aa1f01e819 (patch)
tree2d55ed65c2f73821afa1d1f367832836177cdfab /lib
parent4b7c11e3f928befaa13daf142a2405284b0d07e5 (diff)
downloadpleroma-62bc0657e7ad78a708c1bb6a82eb98aa1f01e819.tar.gz
excluded invisible users from search results
Diffstat (limited to 'lib')
-rw-r--r--lib/pleroma/user/search.ex5
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/pleroma/user/search.ex b/lib/pleroma/user/search.ex
index 09664db76..b1bb9d4da 100644
--- a/lib/pleroma/user/search.ex
+++ b/lib/pleroma/user/search.ex
@@ -45,6 +45,7 @@ defmodule Pleroma.User.Search do
for_user
|> base_query(following)
|> filter_blocked_user(for_user)
+ |> filter_invisible_users()
|> filter_blocked_domains(for_user)
|> fts_search(query_string)
|> trigram_rank(query_string)
@@ -98,6 +99,10 @@ defmodule Pleroma.User.Search do
defp base_query(_user, false), do: User
defp base_query(user, true), do: User.get_followers_query(user)
+ defp filter_invisible_users(query) do
+ from(q in query, where: q.invisible == false)
+ end
+
defp filter_blocked_user(query, %User{blocks: blocks})
when length(blocks) > 0 do
from(q in query, where: not (q.ap_id in ^blocks))