diff --git a/lib/music_library/scrobble_activity.ex b/lib/music_library/scrobble_activity.ex index 6508a484..5d00db1a 100644 --- a/lib/music_library/scrobble_activity.ex +++ b/lib/music_library/scrobble_activity.ex @@ -343,11 +343,12 @@ defmodule MusicLibrary.ScrobbleActivity do releases. """ def get_top_albums_by_period(opts) do - period = Keyword.get(opts, :period, :last_30_days) + period = Keyword.get(opts, :period, :last_7_days) albums = case period do :all_time -> get_top_albums(opts) + :last_7_days -> get_top_albums_by_days(7, opts) :last_30_days -> get_top_albums_by_days(30, opts) :last_90_days -> get_top_albums_by_days(90, opts) :last_365_days -> get_top_albums_by_days(365, opts) @@ -373,10 +374,11 @@ defmodule MusicLibrary.ScrobbleActivity do Gets top artists for a time period (30, 90, 365 days) and all time. """ def get_top_artists_by_period(opts) do - period = Keyword.get(opts, :period, :last_30_days) + period = Keyword.get(opts, :period, :last_7_days) case period do :all_time -> get_top_artists(opts) + :last_7_days -> get_top_artists_by_days(7, opts) :last_30_days -> get_top_artists_by_days(30, opts) :last_90_days -> get_top_artists_by_days(90, opts) :last_365_days -> get_top_artists_by_days(365, opts) diff --git a/lib/music_library_web/live/stats_live/top_albums.ex b/lib/music_library_web/live/stats_live/top_albums.ex index 01bc50af..bd4056d9 100644 --- a/lib/music_library_web/live/stats_live/top_albums.ex +++ b/lib/music_library_web/live/stats_live/top_albums.ex @@ -20,13 +20,21 @@ defmodule MusicLibraryWeb.StatsLive.TopAlbums do <.tabs class="mt-4"> <.tabs_list active_tab={name_from_period(@period)} variant="segmented" size="xs"> + <:tab + class="flex-1" + name="top_albums_last_7_days" + phx-click={JS.push("set_period", value: %{period: "last_7_days"})} + phx-target={@myself} + > + {gettext("7d")} + <:tab class="flex-1" name="top_albums_last_30_days" phx-click={JS.push("set_period", value: %{period: "last_30_days"})} phx-target={@myself} > - {gettext("30 days")} + {gettext("30d")} <:tab class="flex-1" @@ -34,7 +42,7 @@ defmodule MusicLibraryWeb.StatsLive.TopAlbums do phx-click={JS.push("set_period", value: %{period: "last_90_days"})} phx-target={@myself} > - {gettext("90 days")} + {gettext("90d")} <:tab class="flex-1" @@ -42,7 +50,7 @@ defmodule MusicLibraryWeb.StatsLive.TopAlbums do phx-click={JS.push("set_period", value: %{period: "last_365_days"})} phx-target={@myself} > - {gettext("Last year")} + {gettext("1y")} <:tab class="flex-1" @@ -76,7 +84,7 @@ defmodule MusicLibraryWeb.StatsLive.TopAlbums do def mount(socket) do {:ok, socket - |> assign(:period, :last_30_days)} + |> assign(:period, :last_7_days)} end @impl true diff --git a/lib/music_library_web/live/stats_live/top_artists.ex b/lib/music_library_web/live/stats_live/top_artists.ex index 8790e6a6..dce0b13e 100644 --- a/lib/music_library_web/live/stats_live/top_artists.ex +++ b/lib/music_library_web/live/stats_live/top_artists.ex @@ -20,13 +20,21 @@ defmodule MusicLibraryWeb.StatsLive.TopArtists do <.tabs class="mt-4"> <.tabs_list active_tab={name_from_period(@period)} variant="segmented" size="xs"> + <:tab + class="flex-1" + name="top_artists_last_7_days" + phx-click={JS.push("set_period", value: %{period: "last_7_days"})} + phx-target={@myself} + > + {gettext("7d")} + <:tab class="flex-1" name="top_artists_last_30_days" phx-click={JS.push("set_period", value: %{period: "last_30_days"})} phx-target={@myself} > - {gettext("30 days")} + {gettext("30d")} <:tab class="flex-1" @@ -34,7 +42,7 @@ defmodule MusicLibraryWeb.StatsLive.TopArtists do phx-click={JS.push("set_period", value: %{period: "last_90_days"})} phx-target={@myself} > - {gettext("90 days")} + {gettext("90d")} <:tab class="flex-1" @@ -42,7 +50,7 @@ defmodule MusicLibraryWeb.StatsLive.TopArtists do phx-click={JS.push("set_period", value: %{period: "last_365_days"})} phx-target={@myself} > - {gettext("Last year")} + {gettext("1y")} <:tab class="flex-1" @@ -72,7 +80,7 @@ defmodule MusicLibraryWeb.StatsLive.TopArtists do def mount(socket) do {:ok, socket - |> assign(:period, :last_30_days)} + |> assign(:period, :last_7_days)} end @impl true diff --git a/priv/gettext/default.pot b/priv/gettext/default.pot index 70ce9fa9..8b018fc1 100644 --- a/priv/gettext/default.pot +++ b/priv/gettext/default.pot @@ -887,12 +887,6 @@ msgstr "" msgid "Top Albums" msgstr "" -#: lib/music_library_web/live/stats_live/top_albums.ex -#: lib/music_library_web/live/stats_live/top_artists.ex -#, elixir-autogen, elixir-format -msgid "Last year" -msgstr "" - #: lib/music_library_web/components/record_components.ex #, elixir-autogen, elixir-format msgid "Wishlisted on" @@ -1268,18 +1262,6 @@ msgstr "" msgid "Data sourced from" msgstr "" -#: lib/music_library_web/live/stats_live/top_albums.ex -#: lib/music_library_web/live/stats_live/top_artists.ex -#, elixir-autogen, elixir-format -msgid "30 days" -msgstr "" - -#: lib/music_library_web/live/stats_live/top_albums.ex -#: lib/music_library_web/live/stats_live/top_artists.ex -#, elixir-autogen, elixir-format -msgid "90 days" -msgstr "" - #: lib/music_library_web/components/record_form.ex #, elixir-autogen, elixir-format msgid "Rotate colors" @@ -1393,3 +1375,27 @@ msgstr "" #, elixir-autogen, elixir-format msgid "Read" msgstr "" + +#: lib/music_library_web/live/stats_live/top_albums.ex +#: lib/music_library_web/live/stats_live/top_artists.ex +#, elixir-autogen, elixir-format +msgid "1y" +msgstr "" + +#: lib/music_library_web/live/stats_live/top_albums.ex +#: lib/music_library_web/live/stats_live/top_artists.ex +#, elixir-autogen, elixir-format +msgid "30d" +msgstr "" + +#: lib/music_library_web/live/stats_live/top_albums.ex +#: lib/music_library_web/live/stats_live/top_artists.ex +#, elixir-autogen, elixir-format +msgid "7d" +msgstr "" + +#: lib/music_library_web/live/stats_live/top_albums.ex +#: lib/music_library_web/live/stats_live/top_artists.ex +#, elixir-autogen, elixir-format +msgid "90d" +msgstr "" diff --git a/priv/gettext/en/LC_MESSAGES/default.po b/priv/gettext/en/LC_MESSAGES/default.po index 5877a53e..44ce05f1 100644 --- a/priv/gettext/en/LC_MESSAGES/default.po +++ b/priv/gettext/en/LC_MESSAGES/default.po @@ -887,12 +887,6 @@ msgstr "" msgid "Top Albums" msgstr "" -#: lib/music_library_web/live/stats_live/top_albums.ex -#: lib/music_library_web/live/stats_live/top_artists.ex -#, elixir-autogen, elixir-format, fuzzy -msgid "Last year" -msgstr "" - #: lib/music_library_web/components/record_components.ex #, elixir-autogen, elixir-format, fuzzy msgid "Wishlisted on" @@ -1268,18 +1262,6 @@ msgstr "" msgid "Data sourced from" msgstr "" -#: lib/music_library_web/live/stats_live/top_albums.ex -#: lib/music_library_web/live/stats_live/top_artists.ex -#, elixir-autogen, elixir-format -msgid "30 days" -msgstr "" - -#: lib/music_library_web/live/stats_live/top_albums.ex -#: lib/music_library_web/live/stats_live/top_artists.ex -#, elixir-autogen, elixir-format -msgid "90 days" -msgstr "" - #: lib/music_library_web/components/record_form.ex #, elixir-autogen, elixir-format msgid "Rotate colors" @@ -1393,3 +1375,27 @@ msgstr "" #, elixir-autogen, elixir-format, fuzzy msgid "Read" msgstr "" + +#: lib/music_library_web/live/stats_live/top_albums.ex +#: lib/music_library_web/live/stats_live/top_artists.ex +#, elixir-autogen, elixir-format +msgid "1y" +msgstr "" + +#: lib/music_library_web/live/stats_live/top_albums.ex +#: lib/music_library_web/live/stats_live/top_artists.ex +#, elixir-autogen, elixir-format, fuzzy +msgid "30d" +msgstr "" + +#: lib/music_library_web/live/stats_live/top_albums.ex +#: lib/music_library_web/live/stats_live/top_artists.ex +#, elixir-autogen, elixir-format +msgid "7d" +msgstr "" + +#: lib/music_library_web/live/stats_live/top_albums.ex +#: lib/music_library_web/live/stats_live/top_artists.ex +#, elixir-autogen, elixir-format, fuzzy +msgid "90d" +msgstr ""