use Ecto.Schema
alias Pleroma.Activity
+ alias Pleroma.ActivityExpiration
alias Pleroma.Bookmark
alias Pleroma.Notification
alias Pleroma.Object
# typical case.
has_one(:object, Object, on_delete: :nothing, foreign_key: :id)
+ has_one(:expiration, ActivityExpiration, on_delete: :delete_all)
+
timestamps()
end
end
def restrict_deactivated_users(query) do
+ deactivated_users =
+ from(u in User.Query.build(deactivated: true), select: u.ap_id)
+ |> Repo.all()
+
from(activity in query,
- where:
- fragment(
- "? not in (SELECT ap_id FROM users WHERE info->'deactivated' @> 'true')",
- activity.actor
- )
+ where: activity.actor not in ^deactivated_users
)
end