diff --git a/internal/anime/handler.go b/internal/anime/handler.go index f951dac..e56b479 100644 --- a/internal/anime/handler.go +++ b/internal/anime/handler.go @@ -203,17 +203,7 @@ func (h *AnimeHandler) renderCatalogSection(c *gin.Context, section string) { userID := server.CurrentUserID(c) data, err := h.svc.GetCatalogSection(c.Request.Context(), userID, section) if err != nil { - observability.Warn( - "catalog_section_fetch_failed", - "anime", - "", - map[string]any{ - "section": section, - "user_id": userID, - }, - err, - ) - c.AbortWithStatus(http.StatusInternalServerError) + h.abortSectionFetch(c, "catalog_section_fetch_failed", userID, section, err) return } @@ -275,17 +265,7 @@ func (h *AnimeHandler) renderDiscoverSection(c *gin.Context, section string) { userID := server.CurrentUserID(c) data, err := h.svc.GetDiscoverSection(c.Request.Context(), userID, section) if err != nil { - observability.Warn( - "discover_section_fetch_failed", - "anime", - "", - map[string]any{ - "section": section, - "user_id": userID, - }, - err, - ) - c.AbortWithStatus(http.StatusInternalServerError) + h.abortSectionFetch(c, "discover_section_fetch_failed", userID, section, err) return } @@ -297,6 +277,20 @@ func (h *AnimeHandler) renderDiscoverSection(c *gin.Context, section string) { c.HTML(http.StatusOK, "discover.gohtml", data) } +func (h *AnimeHandler) abortSectionFetch(c *gin.Context, event string, userID string, section string, err error) { + observability.Warn( + event, + "anime", + "", + map[string]any{ + "section": section, + "user_id": userID, + }, + err, + ) + c.AbortWithStatus(http.StatusInternalServerError) +} + func (h *AnimeHandler) HandleSchedule(c *gin.Context) { user := server.CurrentUser(c) year, week := parseYearWeek(c)