feat(series): add SeriesHandler, API routes, and SSR browse page
Create SeriesHandler with two API endpoints: - GET /api/series (paginated series list with covers) - GET /api/series/books (books in a specific series) Uses query param ?name=X instead of path param to avoid URL encoding issues with special characters in series names. Add GetSeriesCardsData helper returning services.SeriesInfo for use by the SSR route (avoids handlers→templates import cycle). Register /api/series routes via registerSeriesRoutes in router. Add /series SSR route in frontend.go with library-scoped pagination and error handling, matching the dashboard/bookshelf patterns. Add SeriesHandler to router Config and instantiate in main.go. Add SeriesCardData type to templates/types.go. Add Continue Series as the 5th valid system collection in dashboard handler and auth handler's CreateDefaultCollectionsForUser.
This commit is contained in:
@@ -1015,6 +1015,7 @@ func (h *AuthHandler) CreateDefaultCollectionsForUser(ctx context.Context, userI
|
||||
{"Recently Added", "Newly added items to this library", "🆕", "#9ece6a", "recently-added", 2},
|
||||
{"Recently Read", "Books you've finished (progress >= 1)", "✅", "#e0af68", "recently-read", 3},
|
||||
{"Not Started", "Books you haven't read yet (progress = 0 or no record)", "📕", "#f7768e", "not-started", 4},
|
||||
{"Continue Series", "Next book in series you're reading", "📚", "#bb9af7", "continue-series", 5},
|
||||
}
|
||||
|
||||
for _, col := range defaultCollections {
|
||||
|
||||
Reference in New Issue
Block a user