Add login next url parameter for auth redirects
This commit is contained in:
@@ -40,8 +40,8 @@ defmodule SsoBsnWeb.UserLoginLive do
|
||||
"""
|
||||
end
|
||||
|
||||
def mount(_params, _session, socket) do
|
||||
{:ok, socket |> assign(form: to_form(%{"username" => "", "remember_me" => false}), authenticating: false)}
|
||||
def mount(params, _session, socket) do
|
||||
{:ok, socket |> assign(form: to_form(%{"username" => "", "remember_me" => false}), authenticating: false, next: params["next"])}
|
||||
end
|
||||
|
||||
def handle_event("login", %{"username" => username}, socket) do
|
||||
@@ -57,7 +57,7 @@ defmodule SsoBsnWeb.UserLoginLive do
|
||||
case Accounts.authenticate_user(socket.assigns.challenge, params) do
|
||||
{:ok, user} ->
|
||||
login_token = Accounts.generate_user_login_token(user)
|
||||
{:noreply, socket |> redirect(to: ~p"/users/log_in/#{login_token}")}
|
||||
{:noreply, socket |> redirect(to: if next = socket.assigns.next do ~p"/users/log_in/#{login_token}?next=#{next}" else ~p"/users/log_in/#{login_token}" end)}
|
||||
{:error, error} ->
|
||||
{:noreply, socket |> put_flash(:error, inspect(error))}
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user