diff options
author | kPherox <admin@mail.kr-kp.com> | 2019-10-01 01:39:22 +0900 |
---|---|---|
committer | kPherox <admin@mail.kr-kp.com> | 2019-10-01 01:40:33 +0900 |
commit | a0f101ee806af06bcd4271cd8d57d11ff85ea11a (patch) | |
tree | 2cd3c5d1a645be1395c57ec5616f31afb4b68da7 /lib/pleroma/web/admin_api/config.ex | |
parent | 8ca4f145a51e92c9f3a6c374ceddfac22ea300d9 (diff) | |
parent | 7c9b023a918c84b60ae6547289a083c671a3659b (diff) | |
download | pleroma-a0f101ee806af06bcd4271cd8d57d11ff85ea11a.tar.gz |
Merge remote-tracking branch 'upstream/develop' into fix-prameter-name-of-accounts-update-credentials
Diffstat (limited to 'lib/pleroma/web/admin_api/config.ex')
-rw-r--r-- | lib/pleroma/web/admin_api/config.ex | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/lib/pleroma/web/admin_api/config.ex b/lib/pleroma/web/admin_api/config.ex index a10cc779b..1917a5580 100644 --- a/lib/pleroma/web/admin_api/config.ex +++ b/lib/pleroma/web/admin_api/config.ex @@ -90,6 +90,8 @@ defmodule Pleroma.Web.AdminAPI.Config do for v <- entity, into: [], do: do_convert(v) end + defp do_convert(%Regex{} = entity), do: inspect(entity) + defp do_convert(entity) when is_map(entity) do for {k, v} <- entity, into: %{}, do: {do_convert(k), do_convert(v)} end @@ -122,7 +124,7 @@ defmodule Pleroma.Web.AdminAPI.Config do def transform(entity), do: :erlang.term_to_binary(entity) - defp do_transform(%Regex{} = entity) when is_map(entity), do: entity + defp do_transform(%Regex{} = entity), do: entity defp do_transform(%{"tuple" => [":dispatch", [entity]]}) do {dispatch_settings, []} = do_eval(entity) @@ -154,8 +156,15 @@ defmodule Pleroma.Web.AdminAPI.Config do defp do_transform(entity), do: entity defp do_transform_string("~r/" <> pattern) do - pattern = String.trim_trailing(pattern, "/") - ~r/#{pattern}/ + modificator = String.split(pattern, "/") |> List.last() + pattern = String.trim_trailing(pattern, "/" <> modificator) + + case modificator do + "" -> ~r/#{pattern}/ + "i" -> ~r/#{pattern}/i + "u" -> ~r/#{pattern}/u + "s" -> ~r/#{pattern}/s + end end defp do_transform_string(":" <> atom), do: String.to_atom(atom) |