summaryrefslogtreecommitdiff
path: root/lib/matrix_app_service/phoenix/views/error_helpers.ex
blob: 21e3555df5bac9700173cf058bccf748807366cd (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
defmodule MatrixAppService.Phoenix.ErrorHelpers do
  @moduledoc """
  Conveniences for translating and building error messages.
  """

  @doc """
  Translates an error message.
  """
  def translate_error({msg, opts}) do
    # Because the error messages we show in our forms and APIs
    # are defined inside Ecto, we need to translate them dynamically.
    Enum.reduce(opts, msg, fn {key, value}, acc ->
      String.replace(acc, "%{#{key}}", to_string(value))
    end)
  end
end