1
0
Fork 1
mirror of https://akkoma.dev/AkkomaGang/akkoma.git synced 2024-12-25 04:53:06 +00:00

Apply 6 suggestion(s) to 1 file(s)

This commit is contained in:
feld 2020-12-03 16:03:14 +00:00
parent 95e908e4e2
commit 60c4ac0f70

View file

@ -62,7 +62,10 @@ def run(["dump", group, key]) do
group = maybe_atomize(group)
key = maybe_atomize(key)
dump_key(group, key)
%{group: group, key: key}
|> ConfigDB.get_by_params()
|> Repo.all()
|> Enum.each(&dump/1)
end)
end
@ -297,44 +300,27 @@ defp dump_key(group, key) when is_atom(group) and is_atom(key) do
end
defp dump_group(group) when is_atom(group) do
ConfigDB
%{group: group}
|> ConfigDB.get_by_params()
|> Repo.all()
|> Enum.filter(fn x ->
if x.group == group do
x |> dump
end
end)
|> Enum.each(&dump/1)
end
defp group_exists?(group) when is_atom(group) do
result =
ConfigDB
defp group_exists?(group) do
%{group: group}
|> ConfigDB.get_by_params()
|> Repo.all()
|> Enum.filter(fn x ->
if x.group == group do
x
end
end)
unless result == [] do
true
else
false
end
|> Enum.empty?()
end
defp maybe_atomize(arg) when is_atom(arg), do: arg
defp maybe_atomize(arg) when is_binary(arg) do
chars = String.codepoints(arg)
# hack to make sure input like Pleroma.Mailer.Foo is formatted correctly
# for matching against values returned by Ecto
if "." in chars do
:"Elixir.#{arg}"
if Pleroma.ConfigDB.module_name?(arg) do
String.to_existing_atom("Elixir." <> arg)
else
String.to_atom(arg)
end
end
end
defp check_configdb(callback) do
@ -350,13 +336,9 @@ defp check_configdb(callback) do
defp delete_key(group, key) do
check_configdb(fn ->
ConfigDB
ConfigDB.get_by_params(%{group: group, key: key})
|> Repo.all()
|> Enum.filter(fn x ->
if x.group == group and x.key == key do
x |> delete(true)
end
end)
|> Enum.each(&delete(&1, true))
end)
end
@ -366,13 +348,10 @@ defp delete_group(group) do
shell_info("The following settings will be removed from ConfigDB:\n")
dump_group(group)
ConfigDB
|> Repo.all()
|> Enum.filter(fn x ->
if x.group == group do
x |> delete(true)
end
end)
ConfigDB.get_by_params(%{group: group})
|> Repo.all()
|> Enum.each(&delete(&1, true))
else
_ -> shell_error("No settings in ConfigDB for #{inspect(group)}. Aborting.")
end