diff options
Diffstat (limited to 'lib/matrix_app_service_web/views/error_helpers.ex')
-rw-r--r-- | lib/matrix_app_service_web/views/error_helpers.ex | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/lib/matrix_app_service_web/views/error_helpers.ex b/lib/matrix_app_service_web/views/error_helpers.ex new file mode 100644 index 0000000..4eff422 --- /dev/null +++ b/lib/matrix_app_service_web/views/error_helpers.ex @@ -0,0 +1,16 @@ +defmodule MatrixAppServiceWeb.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 |