feat(playlist): enhance public playlist index with hero stats and loading optimizations

Add a redesigned hero section to the public playlist page displaying
community-generated totals for playlists and episodes, plus new string
translations (English, German, French). Eager-load user, limited episode
previews, and first gallery image to reduce N+1 queries. Cache aggregate
statistics for 10 minutes to improve performance on high-traffic pages.
This commit is contained in:
2026-08-09 10:36:03 +02:00
parent 338c190ae8
commit df6246e3c9
6 changed files with 226 additions and 73 deletions
+4
View File
@@ -2,6 +2,10 @@
return [
'no-playlist-found' => 'Keine Playlisten gefunden!',
'hero-subtitle' => 'Kuratierte Episodensammlungen von der Community erstellt.',
'by' => 'von',
'playlists-count' => 'Playlisten',
'clear-search' => 'Suche löschen',
'personal-playlists' => 'Persönliche Playlisten',
'create-on-personal-page' => 'Du kannst einen in deiner persönlichen Playlisten Seite erstellen.',
'play' => 'Abspielen',
+4
View File
@@ -2,6 +2,10 @@
return [
'no-playlist-found' => 'No Playlist found!',
'hero-subtitle' => 'Curated episode collections made by the community.',
'by' => 'by',
'playlists-count' => 'Playlists',
'clear-search' => 'Clear search',
'personal-playlists' => 'Personal Playlists',
'create-on-personal-page' => 'You can create one in your personal playlists page.',
'play' => 'Play',
+4
View File
@@ -2,6 +2,10 @@
return [
'no-playlist-found' => 'Aucune playlist n\'a été trouvée!',
'hero-subtitle' => 'Collections d\'épisodes organisées par la communauté.',
'by' => 'par',
'playlists-count' => 'Playlists',
'clear-search' => 'Effacer la recherche',
'personal-playlists' => 'Playlists personnelles',
'create-on-personal-page' => 'Vous pouvez en créer une dans votre page de playlists personnelles.',
'play' => 'Lire',