Rename scrobble -> scrobble_release and tighten options check

This commit is contained in:
Claudio Ortolina
2025-05-10 08:08:42 +01:00
parent 441751acd5
commit f223d6d739
4 changed files with 29 additions and 9 deletions
+8 -8
View File
@@ -7,29 +7,29 @@ defmodule MusicLibrary.ScrobbleActivity do
Secrets.get("last_fm_session_key") !== nil
end
def scrobble(release_with_tracks, opts) when is_list(opts) do
case opts do
[started_at: _, finished_at: _] ->
def scrobble_release(release_with_tracks, opts) when is_list(opts) do
case Enum.sort(opts) do
[finished_at: _, started_at: _] ->
raise ArgumentError, """
Cannot scobble a release with both started_at and finished_at.
Remove either of them.
"""
[started_at: started_at] ->
scrobble(release_with_tracks, {:started_at, started_at})
scrobble_release(release_with_tracks, {:started_at, started_at})
[finished_at: finished_at] ->
scrobble(release_with_tracks, {:finished_at, finished_at})
scrobble_release(release_with_tracks, {:finished_at, finished_at})
end
end
def scrobble(release_with_tracks, {:finished_at, finished_at}) do
def scrobble_release(release_with_tracks, {:finished_at, finished_at}) do
release_duration = Release.release_duration(release_with_tracks)
started_at = DateTime.add(finished_at, -release_duration, :millisecond)
scrobble(release_with_tracks, {:started_at, started_at})
scrobble_release(release_with_tracks, {:started_at, started_at})
end
def scrobble(release_with_tracks, {:started_at, started_at}) do
def scrobble_release(release_with_tracks, {:started_at, started_at}) do
session_key = Secrets.get!("last_fm_session_key").value
{scrobbles, _finished_at} =
@@ -124,7 +124,7 @@ defmodule MusicLibraryWeb.ReleaseComponent do
if release_with_tracks =
release_with_tracks_async_result && release_with_tracks_async_result.result do
case ScrobbleActivity.scrobble(release_with_tracks, finished_at: DateTime.utc_now()) do
case ScrobbleActivity.scrobble_release(release_with_tracks, finished_at: DateTime.utc_now()) do
{:ok, _} ->
{:noreply,
socket
+10
View File
@@ -809,3 +809,13 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Scrobble release"
msgstr ""
#: lib/music_library_web/components/release_component.ex
#, elixir-autogen, elixir-format
msgid "Disc scrobbled successfully"
msgstr ""
#: lib/music_library_web/components/release_component.ex
#, elixir-autogen, elixir-format
msgid "Error scrobbling disc"
msgstr ""
+10
View File
@@ -809,3 +809,13 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "Scrobble release"
msgstr ""
#: lib/music_library_web/components/release_component.ex
#, elixir-autogen, elixir-format
msgid "Disc scrobbled successfully"
msgstr ""
#: lib/music_library_web/components/release_component.ex
#, elixir-autogen, elixir-format, fuzzy
msgid "Error scrobbling disc"
msgstr ""