diff --git a/jobs/airing-anime.go b/jobs/airing-anime.go deleted file mode 100644 index 3fe5eb6c..00000000 --- a/jobs/airing-anime.go +++ /dev/null @@ -1,46 +0,0 @@ -// package main - -// import ( -// "fmt" -// "sort" - -// "github.com/animenotifier/arn" -// "github.com/fatih/color" -// ) - -// // AiringAnime ... -// func AiringAnime() { -// fmt.Println("Running background job: Airing Anime") - -// animeList, err := arn.GetAiringAnime() - -// if err != nil { -// color.Red("Failed fetching airing anime") -// color.Red(err.Error()) -// return -// } - -// sort.Sort(arn.AnimeByPopularity(animeList)) - -// // Convert to small anime list -// var animeListSmall []*arn.AnimeSmall - -// for _, anime := range animeList { -// animeListSmall = append(animeListSmall, &arn.AnimeSmall{ -// ID: anime.ID, -// Title: anime.Title, -// Image: anime.Image, -// Watching: anime.Watching, -// }) -// } - -// saveErr := arn.SetObject("Cache", "airingAnime", &arn.AiringAnimeCacheSmall{ -// Anime: animeListSmall, -// }) - -// if saveErr != nil { -// color.Red("Error saving airing anime") -// color.Red(saveErr.Error()) -// return -// } -// } diff --git a/jobs/airing-anime/airing-anime.go b/jobs/airing-anime/airing-anime.go new file mode 100644 index 00000000..92327535 --- /dev/null +++ b/jobs/airing-anime/airing-anime.go @@ -0,0 +1,39 @@ +package main + +import ( + "github.com/animenotifier/arn" + "github.com/fatih/color" +) + +func main() { + color.Yellow("Caching airing anime") + + animeList, err := arn.GetAiringAnime() + + if err != nil { + color.Red("Failed fetching airing anime") + color.Red(err.Error()) + return + } + + // sort.Slice + + // Convert to small anime list + cache := &arn.ListOfIDs{} + + for _, anime := range animeList { + cache.IDList = append(cache.IDList, anime.ID) + } + + println(len(cache.IDList)) + + saveErr := arn.SetObject("Cache", "airing anime", cache) + + if saveErr != nil { + color.Red("Error saving airing anime") + color.Red(saveErr.Error()) + return + } + + color.Green("Finished.") +} diff --git a/jobs/main.go b/jobs/main.go deleted file mode 100644 index d535a4e8..00000000 --- a/jobs/main.go +++ /dev/null @@ -1,18 +0,0 @@ -package main - -import "time" - -func main() { - // Background jobs - go func() { - for { - AiringAnime() - time.Sleep(time.Duration(2) * time.Second) - } - }() - - // Main loop - for { - time.Sleep(time.Duration(10) * time.Second) - } -} diff --git a/jobs/sync-anime/sync-anime.go b/jobs/sync-anime/sync-anime.go index b664c7fb..4e0e3763 100644 --- a/jobs/sync-anime/sync-anime.go +++ b/jobs/sync-anime/sync-anime.go @@ -42,17 +42,18 @@ func sync(data *kitsu.Anime) { anime.EndDate = attr.EndDate anime.EpisodeCount = attr.EpisodeCount anime.EpisodeLength = attr.EpisodeLength + anime.Status = attr.Status + anime.NSFW = attr.Nsfw anime.Summary = arn.FixAnimeDescription(attr.Synopsis) - if data.Attributes.YoutubeVideoID != "" { + if attr.YoutubeVideoID != "" { anime.Trailers = append(anime.Trailers, arn.AnimeTrailer{ Service: "Youtube", - VideoID: data.Attributes.YoutubeVideoID, + VideoID: attr.YoutubeVideoID, }) } err := anime.Save() - status := "" if err == nil { diff --git a/mixins/AnimeGrid.pixy b/mixins/AnimeGrid.pixy index 3ec380d3..5f776d6d 100644 --- a/mixins/AnimeGrid.pixy +++ b/mixins/AnimeGrid.pixy @@ -2,4 +2,4 @@ component AnimeGrid(animeList []*arn.Anime) .anime-grid each anime in animeList a.anime-grid-cell.ajax(href="/anime/" + toString(anime.ID)) - img.anime-grid-image(src=anime.Image, alt=anime.Title.Romaji, title=anime.Title.Romaji + " (" + toString(anime.Watching()) + ")") \ No newline at end of file + img.anime-grid-image(src=anime.Image.Small, alt=anime.Title.Romaji, title=anime.Title.Romaji + " (" + toString(anime.Watching()) + ")") \ No newline at end of file diff --git a/pages/airing/airing.go b/pages/airing/airing.go index e34abfcf..13173569 100644 --- a/pages/airing/airing.go +++ b/pages/airing/airing.go @@ -2,17 +2,20 @@ package airing import ( "github.com/aerogo/aero" + "github.com/animenotifier/arn" + "github.com/animenotifier/notify.moe/components" ) // Get ... func Get(ctx *aero.Context) string { - // airingAnimeCache := new(arn.AiringAnimeCache) - // err := arn.GetObject("Cache", "airingAnime", airingAnimeCache) + var cache arn.ListOfIDs + err := arn.GetObject("Cache", "airing anime", &cache) - // if err != nil { - // return ctx.Error(500, "Couldn't fetch airing anime", err) - // } + airing, err := arn.GetAiringAnimeCached() - // return ctx.HTML(components.Airing(airingAnimeCache.Anime)) - return ctx.HTML("Coming soon.") + if err != nil { + return ctx.Error(500, "Couldn't fetch airing anime", err) + } + + return ctx.HTML(components.Airing(airing)) }