diff --git a/ober.go b/ober.go index f6fa9a2..bff2bac 100644 --- a/ober.go +++ b/ober.go @@ -26,19 +26,13 @@ func RunWebserv() { } func Start(ctx *fasthttp.RequestCtx) { - data, err := cache.Get(seasonApiJikan) - if err != nil { - addErrorToCtx(ctx, err) - return - } - var seasonData SeasonJikan - err = json.Unmarshal(data, &seasonData) + season, err := GetSeasonCache() if err != nil { addErrorToCtx(ctx, err) return } - WriteIndex(ctx, &seasonData) + WriteIndex(ctx, season) ctx.SetContentType("text/html; charset=utf-8") ctx.SetStatusCode(fasthttp.StatusOK) @@ -50,12 +44,6 @@ func Season(ctx *fasthttp.RequestCtx) { addErrorToCtx(ctx, err) return } - var seasonData SeasonJikan - err = json.Unmarshal(data, &seasonData) - if err != nil { - addErrorToCtx(ctx, err) - return - } _, err = ctx.Write(data) if err != nil { @@ -201,7 +189,9 @@ func WatchPost(ctx *fasthttp.RequestCtx) { } for _, anime := range animes { - // TODO iterate animes + // TODO check if anime is in season + + // iterate sent animes detail, _, err := GetAnimeDetailData(anime.Anime) if err != nil { ctx.WriteString(err.Error()) diff --git a/raser.go b/raser.go new file mode 100644 index 0000000..6919d4d --- /dev/null +++ b/raser.go @@ -0,0 +1,13 @@ +package main + +import "encoding/json" + +func GetSeasonCache() (*SeasonJikan, error) { + data, err := cache.Get(seasonApiJikan) + if err != nil { + return nil, err + } + var seasonData SeasonJikan + err = json.Unmarshal(data, &seasonData) + return &seasonData, err +}