Show read or edit depending on presence of notes
This commit is contained in:
@@ -14,7 +14,7 @@ defmodule MusicLibraryWeb.NotesComponent do
|
|||||||
{:ok,
|
{:ok,
|
||||||
socket
|
socket
|
||||||
|> assign(assigns)
|
|> assign(assigns)
|
||||||
|> assign(:mode, "read")
|
|> assign(:mode, initial_mode(assigns.record))
|
||||||
|> assign(:form, to_form(changeset))}
|
|> assign(:form, to_form(changeset))}
|
||||||
end
|
end
|
||||||
|
|
||||||
@@ -96,4 +96,7 @@ defmodule MusicLibraryWeb.NotesComponent do
|
|||||||
def handle_event("set_mode", %{"mode" => mode}, socket) when mode in ["read", "edit"] do
|
def handle_event("set_mode", %{"mode" => mode}, socket) when mode in ["read", "edit"] do
|
||||||
{:noreply, assign(socket, :mode, mode)}
|
{:noreply, assign(socket, :mode, mode)}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
defp initial_mode(record) when record.notes in [nil, ""], do: "edit"
|
||||||
|
defp initial_mode(_record), do: "read"
|
||||||
end
|
end
|
||||||
|
|||||||
Reference in New Issue
Block a user