From 0ecf580614f857cddebef3b8790d60d6c76407a4 Mon Sep 17 00:00:00 2001 From: Claudio Ortolina Date: Sat, 6 Sep 2025 10:57:34 +0300 Subject: [PATCH] Show read or edit depending on presence of notes --- lib/music_library_web/components/notes_component.ex | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/music_library_web/components/notes_component.ex b/lib/music_library_web/components/notes_component.ex index 2e695cef..96e15b62 100644 --- a/lib/music_library_web/components/notes_component.ex +++ b/lib/music_library_web/components/notes_component.ex @@ -14,7 +14,7 @@ defmodule MusicLibraryWeb.NotesComponent do {:ok, socket |> assign(assigns) - |> assign(:mode, "read") + |> assign(:mode, initial_mode(assigns.record)) |> assign(:form, to_form(changeset))} end @@ -96,4 +96,7 @@ defmodule MusicLibraryWeb.NotesComponent do def handle_event("set_mode", %{"mode" => mode}, socket) when mode in ["read", "edit"] do {:noreply, assign(socket, :mode, mode)} end + + defp initial_mode(record) when record.notes in [nil, ""], do: "edit" + defp initial_mode(_record), do: "read" end