Current section

Files

Jump to
cloudinex lib cloudinex validation.ex
Raw

lib/cloudinex/validation.ex

defmodule Cloudinex.Validation do
@moduledoc false
require Logger
def validate_upload_options(options) do
{:error, "Invalid options"}
end
def remove_invalid_keys(list, valid_keys) when is_list(list) do
Keyword.take(list, valid_keys)
end
def valid_member?(list, enum, key) when is_list(list) do
case Enum.member?(enum, list[key]) do
true -> list
false -> Keyword.delete(list, key)
end
end
def valid_option?(list, key, value) when is_list(list) do
case list[key] == value do
true -> list
false -> Keyword.delete(list, key)
end
end
def valid_float_range?(list, key, low, high) when is_list(list) and is_float(low) and is_float(high) do
case is_float(list[key]) and list[key] >= low and list[key] <= high do
true -> list
false -> Keyword.delete(list, key)
end
end
def parse_keyword(list, key, fun) do
case list[key] do
nil -> list
item -> Keyword.put(list, key, fun.(item))
end
end
end