Files
music_library/lib/music_library_web/controllers/stats_controller.ex
T
Claudio Ortolina 69e6cc67a2 Make page titles consistent with application structure
- All existing pages get a nice title
- Suffix is "Music Library"
- Fallback is current request path
2024-10-15 17:32:59 +01:00

29 lines
841 B
Elixir

defmodule MusicLibraryWeb.StatsController do
use MusicLibraryWeb, :controller
alias MusicLibrary.Records
def index(conn, _params) do
records_count_by_format =
Records.count_records_by_format()
|> Enum.sort_by(fn {_format, count} -> count end, :desc)
records_count_by_type =
Records.count_records_by_type()
|> Enum.sort_by(fn {_type, count} -> count end, :desc)
records_count = Enum.reduce(records_count_by_format, 0, fn {_, count}, acc -> acc + count end)
latest_record = Records.get_latest_record!()
conn
|> assign(:page_title, "Stats")
|> render(:index,
records_count_by_format: records_count_by_format,
records_count_by_type: records_count_by_type,
records_count: records_count,
latest_record: latest_record,
nav_section: :stats
)
end
end