From 2f5c83b02626b4f1b907b09b9ac2f1846c89296d Mon Sep 17 00:00:00 2001 From: Claudio Ortolina Date: Sat, 1 Mar 2025 17:36:21 +0000 Subject: [PATCH] Show album covers when importing/scanning --- .../release_group_search_result.ex | 4 +++ .../components/barcode_scanner_component.ex | 7 +++++ .../components/import_component.ex | 7 +++++ priv/gettext/default.pot | 28 +++++++++--------- priv/static/images/cover-not-found.png | Bin 0 -> 400 bytes 5 files changed, 32 insertions(+), 14 deletions(-) create mode 100644 priv/static/images/cover-not-found.png diff --git a/lib/music_brainz/release_group_search_result.ex b/lib/music_brainz/release_group_search_result.ex index 08c126ac..df1b1c59 100644 --- a/lib/music_brainz/release_group_search_result.ex +++ b/lib/music_brainz/release_group_search_result.ex @@ -13,4 +13,8 @@ defmodule MusicBrainz.ReleaseGroupSearchResult do release: rg["first-release-date"] } end + + def thumb_url(rgr) do + "https://coverartarchive.org/release-group/#{rgr.id}/front-250" + end end diff --git a/lib/music_library_web/components/barcode_scanner_component.ex b/lib/music_library_web/components/barcode_scanner_component.ex index 018758cf..260dc03c 100644 --- a/lib/music_library_web/components/barcode_scanner_component.ex +++ b/lib/music_library_web/components/barcode_scanner_component.ex @@ -1,6 +1,7 @@ defmodule MusicLibraryWeb.BarcodeScannerComponent do use MusicLibraryWeb, :live_component + alias MusicBrainz.ReleaseGroupSearchResult alias MusicLibrary.Records alias MusicLibraryWeb.RecordComponents @@ -100,6 +101,12 @@ defmodule MusicLibraryWeb.BarcodeScannerComponent do defp release(assigns) do ~H"""
+ {@release.release_group.title} ~p"/images/cover-not-found.png" <> "';"} + />

{@release.artists} diff --git a/lib/music_library_web/components/import_component.ex b/lib/music_library_web/components/import_component.ex index dcaff0ce..fefb1521 100644 --- a/lib/music_library_web/components/import_component.ex +++ b/lib/music_library_web/components/import_component.ex @@ -4,6 +4,7 @@ defmodule MusicLibraryWeb.ImportComponent do import MusicLibraryWeb.RecordComponents, only: [toggle_actions_menu: 1, close_actions_menu: 1, format_label: 1, type_label: 1] + alias MusicBrainz.ReleaseGroupSearchResult alias MusicLibrary.Records @impl true @@ -62,6 +63,12 @@ defmodule MusicLibraryWeb.ImportComponent do ~H"""
  • + {@release_group.title} ~p"/images/cover-not-found.png" <> "';"} + />

    {@release_group.artists} diff --git a/priv/gettext/default.pot b/priv/gettext/default.pot index d2c89850..cfa840de 100644 --- a/priv/gettext/default.pot +++ b/priv/gettext/default.pot @@ -146,7 +146,7 @@ msgstr "" msgid "No cover selected" msgstr "" -#: lib/music_library_web/components/import_component.ex:44 +#: lib/music_library_web/components/import_component.ex:45 #, elixir-autogen, elixir-format msgid "No results" msgstr "" @@ -218,12 +218,12 @@ msgstr "" msgid "Search" msgstr "" -#: lib/music_library_web/components/import_component.ex:26 +#: lib/music_library_web/components/import_component.ex:27 #, elixir-autogen, elixir-format msgid "Search for a record on MusicBrainz" msgstr "" -#: lib/music_library_web/components/import_component.ex:27 +#: lib/music_library_web/components/import_component.ex:28 #, elixir-autogen, elixir-format msgid "Search for records" msgstr "" @@ -337,19 +337,19 @@ msgstr "" msgid "Scrobble activity" msgstr "" -#: lib/music_library_web/components/import_component.ex:85 +#: lib/music_library_web/components/import_component.ex:92 #: lib/music_library_web/live/stats_live/index.html.heex:169 #, elixir-autogen, elixir-format msgid "Choose which format to import" msgstr "" -#: lib/music_library_web/components/barcode_scanner_component.ex:121 +#: lib/music_library_web/components/barcode_scanner_component.ex:128 #: lib/music_library_web/live/stats_live/index.html.heex:141 #, elixir-autogen, elixir-format msgid "Collected" msgstr "" -#: lib/music_library_web/components/barcode_scanner_component.ex:118 +#: lib/music_library_web/components/barcode_scanner_component.ex:125 #: lib/music_library_web/live/stats_live/index.html.heex:147 #, elixir-autogen, elixir-format msgid "Wishlisted" @@ -632,42 +632,42 @@ msgstr "" msgid "Scan barcodes ยท Collection" msgstr "" -#: lib/music_library_web/components/barcode_scanner_component.ex:23 +#: lib/music_library_web/components/barcode_scanner_component.ex:24 #, elixir-autogen, elixir-format msgid "Scan one or more barcodes" msgstr "" -#: lib/music_library_web/components/barcode_scanner_component.ex:90 +#: lib/music_library_web/components/barcode_scanner_component.ex:91 #, elixir-autogen, elixir-format msgid "Open camera" msgstr "" -#: lib/music_library_web/components/barcode_scanner_component.ex:54 +#: lib/music_library_web/components/barcode_scanner_component.ex:55 #, elixir-autogen, elixir-format msgid "Import releases" msgstr "" -#: lib/music_library_web/components/barcode_scanner_component.ex:162 +#: lib/music_library_web/components/barcode_scanner_component.ex:169 #, elixir-autogen, elixir-format msgid "Failed to search release for barcode %{number}" msgstr "" -#: lib/music_library_web/components/barcode_scanner_component.ex:153 +#: lib/music_library_web/components/barcode_scanner_component.ex:160 #, elixir-autogen, elixir-format msgid "No release found for barcode %{number}" msgstr "" -#: lib/music_library_web/components/barcode_scanner_component.ex:51 +#: lib/music_library_web/components/barcode_scanner_component.ex:52 #, elixir-autogen, elixir-format msgid "Importing..." msgstr "" -#: lib/music_library_web/components/barcode_scanner_component.ex:192 +#: lib/music_library_web/components/barcode_scanner_component.ex:199 #, elixir-autogen, elixir-format msgid "Records imported successfully" msgstr "" -#: lib/music_library_web/components/barcode_scanner_component.ex:116 +#: lib/music_library_web/components/barcode_scanner_component.ex:123 #, elixir-autogen, elixir-format msgid "New" msgstr "" diff --git a/priv/static/images/cover-not-found.png b/priv/static/images/cover-not-found.png new file mode 100644 index 0000000000000000000000000000000000000000..84fec55f59ee52ae959f4bd5880701fa53cffe31 GIT binary patch literal 400 zcmV;B0dM|^P){Apn(P&XrO@x2FE}H56(@+ zr|VorTcVTeXy=`C?NBfQs{Z8^n%Yu_mi7oZqyf*-J2>Z=(T)KMDL{tr;FYab6@XD1 z@LBi*J=E1+zzO1D@akau3Hna5ugW|~3Qwqnf|n}L`T@r5wK}kq4a|c2=c#2Bif_uCO9xUKTQ4H7h zdVPmyHXO`9VBo<46h)-QSLlX=(ucz6txrB)ygp@^70`e)q zQsTj`AITj!i;sh03Q#5<+;R1T@JktkO9Mu+f|(~XKM0f0>ns74{|E11msSJnWvGcr u8}{;