Store last fm information into session (doesn't work yet)

This commit is contained in:
Claudio Ortolina
2025-05-05 20:58:37 +01:00
parent 95e80bc432
commit d5b29b20bb
2 changed files with 21 additions and 3 deletions
@@ -1,7 +1,19 @@
defmodule MusicLibraryWeb.LastFmController do
use MusicLibraryWeb, :controller
def callback(conn, %{"token" => _token}) do
conn |> redirect(to: ~p"/")
def callback(conn, %{"token" => token}) do
case LastFm.get_session(token) do
{:ok, session} ->
conn
|> put_session(:last_fm_user, session.name)
|> put_session(:last_fm_key, session.key)
|> put_flash(:info, "Successfully authenticated with Last.fm.")
|> redirect(to: ~p"/")
{:error, reason} ->
conn
|> put_flash(:error, "Failed to authenticate with Last.fm: #{reason}")
|> redirect(to: ~p"/")
end
end
end