sloanelybutsurely.com/lib/web/controllers/globals.ex

22 lines
602 B
Elixir

defmodule Web.Globals do
@moduledoc false
use Web, :live_view
def assign_globals(%Plug.Conn{} = conn, _opts) do
conn
|> Plug.Conn.assign(:current_path, conn.request_path)
|> Plug.Conn.assign(:load_trix?, false)
end
def on_mount(:default, _params, _session, socket) do
socket =
socket
|> attach_hook(:assign_handle_params_globals, :handle_params, fn _params, uri, socket ->
%URI{path: current_path} = URI.parse(uri)
{:cont, assign(socket, :current_path, current_path)}
end)
|> assign(:load_trix?, false)
{:cont, socket}
end
end