diff options
author | Maksim <parallel588@gmail.com> | 2019-06-14 11:39:57 +0000 |
---|---|---|
committer | lain <lain@soykaf.club> | 2019-06-14 11:39:57 +0000 |
commit | ee4ed87fb47fa6c395e0f77b614f1630f3a12637 (patch) | |
tree | f4dbeab1fd2b37b4f722e39e5db9e59c83c148ce /lib/pleroma/web/controller_helper.ex | |
parent | f045d1437cb9e1e53565c4f35be2c7ca3a9d73ff (diff) | |
download | pleroma-ee4ed87fb47fa6c395e0f77b614f1630f3a12637.tar.gz |
[#948] /api/v1/account_search added optional parameters (limit, offset, following)
Diffstat (limited to 'lib/pleroma/web/controller_helper.ex')
-rw-r--r-- | lib/pleroma/web/controller_helper.ex | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/pleroma/web/controller_helper.ex b/lib/pleroma/web/controller_helper.ex index 55706eeb8..8a753bb4f 100644 --- a/lib/pleroma/web/controller_helper.ex +++ b/lib/pleroma/web/controller_helper.ex @@ -15,4 +15,22 @@ defmodule Pleroma.Web.ControllerHelper do |> put_status(status) |> json(json) end + + @spec fetch_integer_param(map(), String.t(), integer() | nil) :: integer() | nil + def fetch_integer_param(params, name, default \\ nil) do + params + |> Map.get(name, default) + |> param_to_integer(default) + end + + defp param_to_integer(val, _) when is_integer(val), do: val + + defp param_to_integer(val, default) when is_binary(val) do + case Integer.parse(val) do + {res, _} -> res + _ -> default + end + end + + defp param_to_integer(_, default), do: default end |