- config = Application.get_env(:pleroma, :media_proxy, [])
- domain = URI.parse(url).host
-
- cond do
- !Keyword.get(config, :enabled, false) or String.starts_with?(url, Pleroma.Web.base_url()) ->
- url
-
- Enum.any?(Pleroma.Config.get([:media_proxy, :whitelist]), fn pattern ->
- String.equivalent?(domain, pattern)
- end) ->
- url
-
- true ->
- encode_url(url)