diff --git a/lib/music_library/records/record.ex b/lib/music_library/records/record.ex index aac11bec..619984c2 100644 --- a/lib/music_library/records/record.ex +++ b/lib/music_library/records/record.ex @@ -203,6 +203,15 @@ defmodule MusicLibrary.Records.Record do end def formats, do: @formats + def types, do: @types + + def formats_with_labels do + Enum.map(@formats, fn f -> {format_long_label(f), f} end) + end + + def types_with_labels do + Enum.map(@types, fn t -> {type_long_label(t), t} end) + end def format_long_label(:cd), do: "CD" def format_long_label(:backup), do: "Backup" diff --git a/lib/music_library_web/live/record_live/form_component.ex b/lib/music_library_web/live/record_live/form_component.ex index 36727576..f1b16844 100644 --- a/lib/music_library_web/live/record_live/form_component.ex +++ b/lib/music_library_web/live/record_live/form_component.ex @@ -34,14 +34,14 @@ defmodule MusicLibraryWeb.RecordLive.FormComponent do type="select" label={gettext("Type")} prompt={gettext("Choose a value")} - options={Ecto.Enum.values(MusicLibrary.Records.Record, :type)} + options={Records.Record.types_with_labels()} /> <.input field={@form[:format]} type="select" label={gettext("Format")} prompt={gettext("Choose a value")} - options={Ecto.Enum.values(MusicLibrary.Records.Record, :format)} + options={Records.Record.formats_with_labels()} /> <.input field={@form[:musicbrainz_id]} type="text" label={gettext("MusicBrainz ID")} />