fix: check render errors in playback and watchlist handlers

This commit is contained in:
2026-04-21 01:20:39 +02:00
parent c3a2285834
commit a1909559b3
2 changed files with 30 additions and 7 deletions

View File

@@ -115,7 +115,10 @@ func (h *Handler) HandleWatchPage(w http.ResponseWriter, r *http.Request) {
Segments: convertSegments(data.Segments), Segments: convertSegments(data.Segments),
} }
templates.WatchPage(anime, pageData).Render(r.Context(), w) if err := templates.WatchPage(anime, pageData).Render(r.Context(), w); err != nil {
log.Printf("render error: %v", err)
http.Error(w, "Internal Server Error", http.StatusInternalServerError)
}
} }
func watchlistUserIDFromRequest(r *http.Request) string { func watchlistUserIDFromRequest(r *http.Request) string {

View File

@@ -85,7 +85,11 @@ func (h *Handler) HandleUpdateWatchlist(w http.ResponseWriter, r *http.Request)
return return
} }
watchlist.WatchlistDropdown(int(animeID), animeTitle, animeTitleEnglish, animeTitleJapanese, animeImage, status, airing).Render(r.Context(), w) if err := watchlist.WatchlistDropdown(int(animeID), animeTitle, animeTitleEnglish, animeTitleJapanese, animeImage, status, airing).Render(r.Context(), w); err != nil {
log.Printf("render error: %v", err)
http.Error(w, "Internal Server Error", http.StatusInternalServerError)
return
}
} }
func (h *Handler) HandleCardWatchlist(w http.ResponseWriter, r *http.Request) { func (h *Handler) HandleCardWatchlist(w http.ResponseWriter, r *http.Request) {
@@ -139,7 +143,11 @@ func (h *Handler) HandleCardWatchlist(w http.ResponseWriter, r *http.Request) {
return return
} }
watchlist.CardButton(int(animeID), animeTitle, animeTitleEnglish, animeTitleJapanese, animeImage, airing, true).Render(r.Context(), w) if err := watchlist.CardButton(int(animeID), animeTitle, animeTitleEnglish, animeTitleJapanese, animeImage, airing, true).Render(r.Context(), w); err != nil {
log.Printf("render error: %v", err)
http.Error(w, "Internal Server Error", http.StatusInternalServerError)
return
}
} }
func (h *Handler) HandleDeleteWatchlist(w http.ResponseWriter, r *http.Request) { func (h *Handler) HandleDeleteWatchlist(w http.ResponseWriter, r *http.Request) {
@@ -185,11 +193,17 @@ func (h *Handler) HandleDeleteWatchlist(w http.ResponseWriter, r *http.Request)
} }
if from == "card" { if from == "card" {
watchlist.CardButton(int(animeID), anime.TitleOriginal, title, "", anime.ImageUrl, airing, false).Render(r.Context(), w) if err := watchlist.CardButton(int(animeID), anime.TitleOriginal, title, "", anime.ImageUrl, airing, false).Render(r.Context(), w); err != nil {
log.Printf("render error: %v", err)
http.Error(w, "Internal Server Error", http.StatusInternalServerError)
}
return return
} }
watchlist.WatchlistDropdown(int(animeID), anime.TitleOriginal, title, "", anime.ImageUrl, "", airing).Render(r.Context(), w) if err := watchlist.WatchlistDropdown(int(animeID), anime.TitleOriginal, title, "", anime.ImageUrl, "", airing).Render(r.Context(), w); err != nil {
log.Printf("render error: %v", err)
http.Error(w, "Internal Server Error", http.StatusInternalServerError)
}
} }
func (h *Handler) HandleGetWatchlist(w http.ResponseWriter, r *http.Request) { func (h *Handler) HandleGetWatchlist(w http.ResponseWriter, r *http.Request) {
@@ -241,7 +255,10 @@ func (h *Handler) HandleGetWatchlist(w http.ResponseWriter, r *http.Request) {
// Sort entries // Sort entries
h.sortEntries(filteredEntries, sortBy, sortOrder) h.sortEntries(filteredEntries, sortBy, sortOrder)
templates.Watchlist(filteredEntries, layout, statusFilter, sortBy, sortOrder).Render(r.Context(), w) if err := templates.Watchlist(filteredEntries, layout, statusFilter, sortBy, sortOrder).Render(r.Context(), w); err != nil {
log.Printf("render error: %v", err)
http.Error(w, "Internal Server Error", http.StatusInternalServerError)
}
} }
func (h *Handler) HandleContinueWatching(w http.ResponseWriter, r *http.Request) { func (h *Handler) HandleContinueWatching(w http.ResponseWriter, r *http.Request) {
@@ -262,7 +279,10 @@ func (h *Handler) HandleContinueWatching(w http.ResponseWriter, r *http.Request)
return return
} }
templates.ContinueWatching(entries).Render(r.Context(), w) if err := templates.ContinueWatching(entries).Render(r.Context(), w); err != nil {
log.Printf("render error: %v", err)
http.Error(w, "Internal Server Error", http.StatusInternalServerError)
}
} }
func (h *Handler) HandleDeleteContinueWatching(w http.ResponseWriter, r *http.Request) { func (h *Handler) HandleDeleteContinueWatching(w http.ResponseWriter, r *http.Request) {