Current section
Files
Jump to
Current section
Files
lib/plug.ex
defmodule Alternate.Plug do
@locales Application.get_env(:alternate, :locales, %{})
@gettext Application.get_env(:alternate, :gettext_module, nil)
@locale_assign_key Application.get_env(:alternate, :locale_assign_key, :alternate_locale)
def init(opts), do: opts
unless is_nil(@gettext) do
def call(%Plug.Conn{assigns: assigns} = conn, _opts) do
case Map.get(assigns, @locale_assign_key, nil) do
nil ->
conn
locale ->
Gettext.put_locale(@gettext, locale)
conn
end
end
end
def call(conn, _opts) do
conn
end
end