diff --git a/jobs/sync-anime/main.go b/jobs/sync-anime/main.go index 8e40361e..f3dfd977 100644 --- a/jobs/sync-anime/main.go +++ b/jobs/sync-anime/main.go @@ -61,6 +61,10 @@ func sync(data *kitsu.Anime) { anime.Mappings = []*arn.Mapping{} } + if anime.Episodes == nil { + anime.Episodes = []*arn.AnimeEpisode{} + } + // NSFW if attr.Nsfw { anime.NSFW = 1 diff --git a/pages/anime/anime.pixy b/pages/anime/anime.pixy index b5a53f32..e6c42779 100644 --- a/pages/anime/anime.pixy +++ b/pages/anime/anime.pixy @@ -143,6 +143,19 @@ component Anime(anime *arn.Anime, tracks []*arn.SoundTrack, user *arn.User) .sound-tracks each track in tracks SoundTrack(track) + + if len(anime.Episodes) > 0 + h3.anime-section-name Episodes + table + tbody + each episode in anime.Episodes + tr.episode + td.episode-number= episode.Number + td.episode-title= episode.Title.Japanese + td.episode-actions + a(href="https://translate.google.com/#ja/en/" + episode.Title.Japanese, target="_blank", rel="noopener") + RawIcon("google") + td.episode-airing-date-start= episode.AiringDate.StartDateHuman() //- h3.anime-section-name Reviews //- p Coming soon. diff --git a/pages/anime/episode.scarlet b/pages/anime/episode.scarlet new file mode 100644 index 00000000..0d963fc2 --- /dev/null +++ b/pages/anime/episode.scarlet @@ -0,0 +1,21 @@ +.episode + horizontal + +.episode-number + flex-basis 3.2rem + // text-align right + +.episode-title + flex 1 + +.episode-airing-date-start + flex-basis 270px + text-align right + +< 800px + .episode-airing-date-start + display none + +< 500px + .episode-actions + display none \ No newline at end of file diff --git a/patches/add-empty-episodes/main.go b/patches/add-empty-episodes/main.go new file mode 100644 index 00000000..47b32a6c --- /dev/null +++ b/patches/add-empty-episodes/main.go @@ -0,0 +1,32 @@ +package main + +import ( + "github.com/animenotifier/arn" + "github.com/fatih/color" +) + +func main() { + // Get a stream of all anime + allAnime, err := arn.AllAnime() + + if err != nil { + panic(err) + } + + // Iterate over the stream + for _, anime := range allAnime { + if anime.Mappings == nil { + anime.Mappings = []*arn.Mapping{} + } + + if anime.Episodes == nil { + anime.Episodes = []*arn.AnimeEpisode{} + } + + err := anime.Save() + + if err != nil { + color.Red("Error saving anime: %v", err) + } + } +} diff --git a/styles/include/mixins.scarlet b/styles/include/mixins.scarlet index 35770a34..6bafeb75 100644 --- a/styles/include/mixins.scarlet +++ b/styles/include/mixins.scarlet @@ -36,6 +36,11 @@ mixin clip-long-text white-space nowrap text-overflow ellipsis +mixin bg-dark-up + background-color transparent + :hover + background-color rgba(0, 0, 0, 0.015) + mixin light-up filter brightness(0.4) saturate(1) :hover diff --git a/styles/table.scarlet b/styles/table.scarlet index 3ee0073b..95095801 100644 --- a/styles/table.scarlet +++ b/styles/table.scarlet @@ -19,5 +19,4 @@ th tbody tr - :hover - background-color rgba(0, 0, 0, 0.015) \ No newline at end of file + bg-dark-up \ No newline at end of file