Current section
Files
Jump to
Current section
Files
lib/utils.ex
defmodule Ondix.Utils do
def prepareRelations(url, relations) do
encoded = Enum.join(relations, ",")
cond do
String.contains?(url, "?") -> url <> "&load=" <> encoded
true -> url <> "?load=" <> encoded
end
end
def prepareClauses(url, clauses) do
encoded = Enum.map(clauses, fn {a, b, c} -> "#{a}:#{b}:#{c}" end)
|> Enum.join(",")
cond do
String.contains?(url, "?") -> url <> "&where=" <> encoded
true -> url <> "?where=" <> encoded
end
end
def preparePage(url, page) do
cond do
String.contains?(url, "?") -> url <> "?page=#{page}"
true -> url <> "?page=#{page}"
end
end
def atomize_map([]), do: []
def atomize_map(map) do
Map.keys(map) |> Enum.reduce(%{}, fn keys, acc ->
val = Map.get(map, keys)
if is_list(val) do
Map.put(acc, String.to_atom(keys), Enum.map(val, &atomize_map/1))
else
Map.put(acc, String.to_atom(keys), val)
end
end)
end
end