projects
/
akkoma
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
purge chat and shout endpoints
[akkoma]
/
lib
/
pleroma
/
user
/
query.ex
diff --git
a/lib/pleroma/user/query.ex
b/lib/pleroma/user/query.ex
index 4076925aaa1853a73ee5ce1680c1c1a8e3595786..bf78cb32d3f4336460684418a82e7e976da79c5b 100644
(file)
--- a/
lib/pleroma/user/query.ex
+++ b/
lib/pleroma/user/query.ex
@@
-27,7
+27,7
@@
defmodule Pleroma.User.Query do
- e.g. Pleroma.User.Query.build(%{ap_id: ["http://ap_id1", "http://ap_id2"]})
"""
import Ecto.Query
- e.g. Pleroma.User.Query.build(%{ap_id: ["http://ap_id1", "http://ap_id2"]})
"""
import Ecto.Query
- import Pleroma.Web.
AdminAPI.Search
, only: [not_empty_string: 1]
+ import Pleroma.Web.
Utils.Guards
, only: [not_empty_string: 1]
alias Pleroma.FollowingRelationship
alias Pleroma.User
alias Pleroma.FollowingRelationship
alias Pleroma.User
@@
-46,6
+46,8
@@
defmodule Pleroma.User.Query do
unconfirmed: boolean(),
is_admin: boolean(),
is_moderator: boolean(),
unconfirmed: boolean(),
is_admin: boolean(),
is_moderator: boolean(),
+ is_suggested: boolean(),
+ is_discoverable: boolean(),
super_users: boolean(),
invisible: boolean(),
internal: boolean(),
super_users: boolean(),
invisible: boolean(),
internal: boolean(),
@@
-137,7
+139,7
@@
defmodule Pleroma.User.Query do
defp compose_query({:external, _}, query), do: location_query(query, false)
defp compose_query({:active, _}, query) do
defp compose_query({:external, _}, query), do: location_query(query, false)
defp compose_query({:active, _}, query) do
-
User.restrict_deactivated(query
)
+
where(query, [u], u.is_active == true
)
|> where([u], u.is_approved == true)
|> where([u], u.is_confirmed == true)
end
|> where([u], u.is_approved == true)
|> where([u], u.is_confirmed == true)
end
@@
-148,11
+150,11
@@
defmodule Pleroma.User.Query do
end
defp compose_query({:deactivated, false}, query) do
end
defp compose_query({:deactivated, false}, query) do
-
User.restrict_deactivated(query
)
+
where(query, [u], u.is_active == true
)
end
defp compose_query({:deactivated, true}, query) do
end
defp compose_query({:deactivated, true}, query) do
- where(query, [u], u.
deactivated == ^tru
e)
+ where(query, [u], u.
is_active == fals
e)
end
defp compose_query({:confirmation_pending, bool}, query) do
end
defp compose_query({:confirmation_pending, bool}, query) do
@@
-167,6
+169,14
@@
defmodule Pleroma.User.Query do
where(query, [u], u.is_confirmed == false)
end
where(query, [u], u.is_confirmed == false)
end
+ defp compose_query({:is_suggested, bool}, query) do
+ where(query, [u], u.is_suggested == ^bool)
+ end
+
+ defp compose_query({:is_discoverable, bool}, query) do
+ where(query, [u], u.is_discoverable == ^bool)
+ end
+
defp compose_query({:followers, %User{id: id}}, query) do
query
|> where([u], u.id != ^id)
defp compose_query({:followers, %User{id: id}}, query) do
query
|> where([u], u.id != ^id)