use Pleroma.Web, :controller
alias Pleroma.Config
- alias Pleroma.Repo
alias Pleroma.Stats
alias Pleroma.User
alias Pleroma.Web
Application.get_env(:pleroma, :mrf_simple)
|> Enum.into(%{})
+ # This horror is needed to convert regex sigils to strings
+ mrf_keyword =
+ Application.get_env(:pleroma, :mrf_keyword, [])
+ |> Enum.map(fn {key, value} ->
+ {key,
+ Enum.map(value, fn
+ {pattern, replacement} ->
+ %{
+ "pattern" =>
+ if not is_binary(pattern) do
+ inspect(pattern)
+ else
+ pattern
+ end,
+ "replacement" => replacement
+ }
+
+ pattern ->
+ if not is_binary(pattern) do
+ inspect(pattern)
+ else
+ pattern
+ end
+ end)}
+ end)
+ |> Enum.into(%{})
+
mrf_policies =
MRF.get_policies()
|> Enum.map(fn policy -> to_string(policy) |> String.split(".") |> List.last() end)
end
staff_accounts =
- User.moderator_user_query()
- |> Repo.all()
+ User.all_superusers()
|> Enum.map(fn u -> u.ap_id end)
mrf_user_allowlist =
%{
mrf_policies: mrf_policies,
mrf_simple: mrf_simple,
+ mrf_keyword: mrf_keyword,
mrf_user_allowlist: mrf_user_allowlist,
quarantined_instances: quarantined
}
end,
if Keyword.get(instance, :allow_relay) do
"relay"
+ end,
+ if Keyword.get(instance, :safe_dm_mentions) do
+ "safe_dm_mentions"
end
]
|> Enum.filter(& &1)