2022-05-05 23:26:29 -04:00
|
|
|
defmodule CanneryWeb.InitAssigns do
|
|
|
|
@moduledoc """
|
|
|
|
Ensures common `assigns` are applied to all LiveViews attaching this hook.
|
|
|
|
"""
|
2022-11-07 22:36:38 -05:00
|
|
|
import Phoenix.Component
|
2022-05-05 23:26:29 -04:00
|
|
|
alias Cannery.Accounts
|
|
|
|
|
|
|
|
def on_mount(:default, _params, %{"locale" => locale, "user_token" => user_token}, socket) do
|
|
|
|
Gettext.put_locale(locale)
|
|
|
|
|
|
|
|
socket =
|
|
|
|
socket
|
|
|
|
|> assign_new(:current_user, fn -> Accounts.get_user_by_session_token(user_token) end)
|
|
|
|
|
|
|
|
{:cont, socket}
|
|
|
|
end
|
|
|
|
|
|
|
|
def on_mount(:default, _params, _session, socket), do: {:cont, socket}
|
|
|
|
end
|