defmodule PrymnWeb.UserLoginLive do use PrymnWeb, :live_view @impl true def render(assigns) do ~H"""
<.header class="mb-10 text-center"> Sign in to account <:subtitle> Don't have an account? <.link navigate={~p"/auth/register"} class="text-brand font-semibold hover:underline"> Sign up for an account now. <.simple_form for={@form} id="login_form" action={~p"/auth/log_in"} phx-update="ignore"> <.error :if={@error}> Could not sign in: <%= @error %> <.input field={@form[:email]} type="email" label="Email" placeholder="hello@example.com" required /> <.input field={@form[:password]} type="password" label="Password" required /> <:actions> <.input field={@form[:remember_me]} type="checkbox" label="Keep me logged in" /> <.link href={~p"/auth/reset_password"} class="text-sm font-semibold"> Forgot your password? <:actions> Sign in
""" end @impl true def mount(params, _session, socket) do form = to_form(%{"email" => params["email"] || nil}, as: "user") error = Phoenix.Flash.get(socket.assigns.flash, "login_error") {:ok, assign(socket, form: form, error: error), temporary_assigns: [form: form]} end end