Redesign
This commit is contained in:
@ -10,8 +10,8 @@ import (
|
||||
"github.com/animenotifier/notify.moe/utils"
|
||||
)
|
||||
|
||||
// const maxEpisodes = 26
|
||||
// const maxEpisodesLongSeries = 5
|
||||
const maxEpisodes = 26
|
||||
const maxEpisodesLongSeries = 10
|
||||
const maxDescriptionLength = 170
|
||||
|
||||
// Get anime page.
|
||||
@ -24,16 +24,17 @@ func Get(ctx *aero.Context) string {
|
||||
return ctx.Error(http.StatusNotFound, "Anime not found", err)
|
||||
}
|
||||
|
||||
episodes := anime.Episodes().Items
|
||||
// episodesReversed := false
|
||||
|
||||
// if len(anime.Episodes().Items) > maxEpisodes {
|
||||
// episodesReversed = true
|
||||
// anime.Episodes().Items = anime.Episodes().Items[len(anime.Episodes().Items)-maxEpisodesLongSeries:]
|
||||
if len(episodes) > maxEpisodes {
|
||||
// episodesReversed = true
|
||||
episodes = episodes[len(episodes)-maxEpisodesLongSeries:]
|
||||
|
||||
// for i, j := 0, len(anime.Episodes().Items)-1; i < j; i, j = i+1, j-1 {
|
||||
// anime.Episodes().Items[i], anime.Episodes().Items[j] = anime.Episodes().Items[j], anime.Episodes().Items[i]
|
||||
// }
|
||||
// }
|
||||
for i, j := 0, len(episodes)-1; i < j; i, j = i+1, j-1 {
|
||||
episodes[i], episodes[j] = episodes[j], episodes[i]
|
||||
}
|
||||
}
|
||||
|
||||
// Friends watching
|
||||
var friends []*arn.User
|
||||
@ -113,5 +114,5 @@ func Get(ctx *aero.Context) string {
|
||||
|
||||
ctx.Data = openGraph
|
||||
|
||||
return ctx.HTML(components.Anime(anime, tracks, friends, friendsAnimeListItems, user))
|
||||
return ctx.HTML(components.Anime(anime, tracks, episodes, friends, friendsAnimeListItems, user))
|
||||
}
|
||||
|
@ -1,11 +1,11 @@
|
||||
component Anime(anime *arn.Anime, tracks []*arn.SoundTrack, friends []*arn.User, listItems map[*arn.User]*arn.AnimeListItem, user *arn.User)
|
||||
component Anime(anime *arn.Anime, tracks []*arn.SoundTrack, episodes []*arn.AnimeEpisode, friends []*arn.User, listItems map[*arn.User]*arn.AnimeListItem, user *arn.User)
|
||||
.anime
|
||||
.anime-main-column
|
||||
AnimeMainColumn(anime, tracks, user)
|
||||
AnimeMainColumn(anime, tracks, episodes, user)
|
||||
.anime-side-column
|
||||
AnimeSideColumn(anime, friends, listItems, user)
|
||||
|
||||
component AnimeMainColumn(anime *arn.Anime, tracks []*arn.SoundTrack, user *arn.User)
|
||||
component AnimeMainColumn(anime *arn.Anime, tracks []*arn.SoundTrack, episodes []*arn.AnimeEpisode, user *arn.User)
|
||||
.anime-header(data-id=anime.ID)
|
||||
if anime.Image.Large != ""
|
||||
.anime-image-container.mountable
|
||||
@ -50,6 +50,7 @@ component AnimeMainColumn(anime *arn.Anime, tracks []*arn.SoundTrack, user *arn.
|
||||
AnimeCharacters(anime)
|
||||
AnimeRelations(anime, user)
|
||||
AnimeTracks(anime, tracks)
|
||||
AnimeEpisodes(episodes)
|
||||
|
||||
//- //- h3.anime-section-name Reviews
|
||||
//- //- p Coming soon.
|
||||
|
@ -19,5 +19,5 @@ func Episodes(ctx *aero.Context) string {
|
||||
return ctx.Error(http.StatusNotFound, "Anime not found", err)
|
||||
}
|
||||
|
||||
return ctx.HTML(components.AnimeEpisodes(anime))
|
||||
return ctx.HTML(components.AnimeEpisodes(anime.Episodes().Items))
|
||||
}
|
||||
|
@ -1,27 +1,26 @@
|
||||
component AnimeEpisodes(anime *arn.Anime)
|
||||
AnimeTabs(anime)
|
||||
|
||||
h3.anime-section-name Episodes
|
||||
|
||||
table.episodes
|
||||
tbody
|
||||
each episode in anime.Episodes().Items
|
||||
tr.episode.mountable
|
||||
td.episode-number
|
||||
if episode.Number != -1
|
||||
span= episode.Number
|
||||
td.episode-title
|
||||
if episode.Title.Japanese != ""
|
||||
Japanese(episode.Title.Japanese)
|
||||
else
|
||||
span -
|
||||
td.episode-actions
|
||||
for name, link := range episode.Links
|
||||
a(href=link, target="_blank", rel="noopener", title="Watch episode " + toString(episode.Number) + " on " + name)
|
||||
RawIcon("eye")
|
||||
//- a(href="https://translate.google.com/#ja/en/" + episode.Title.Japanese, target="_blank", rel="noopener")
|
||||
//- RawIcon("google")
|
||||
if validator.IsValidDate(episode.AiringDate.Start)
|
||||
td.episode-airing-date-start.utc-airing-date(data-start-date=episode.AiringDate.Start, data-end-date=episode.AiringDate.End, data-episode-number=episode.Number)= episode.AiringDate.StartDateHuman()
|
||||
else
|
||||
td.episode-airing-date-start
|
||||
component AnimeEpisodes(episodes []*arn.AnimeEpisode)
|
||||
if len(episodes) > 0
|
||||
.anime-section
|
||||
h3.anime-section-name Episodes
|
||||
table.episodes
|
||||
tbody
|
||||
each episode in episodes
|
||||
tr.episode.mountable
|
||||
td.episode-number
|
||||
if episode.Number != -1
|
||||
span= episode.Number
|
||||
td.episode-title
|
||||
if episode.Title.Japanese != ""
|
||||
Japanese(episode.Title.Japanese)
|
||||
else
|
||||
span -
|
||||
td.episode-actions
|
||||
for name, link := range episode.Links
|
||||
a(href=link, target="_blank", rel="noopener", title="Watch episode " + toString(episode.Number) + " on " + name)
|
||||
RawIcon("eye")
|
||||
//- a(href="https://translate.google.com/#ja/en/" + episode.Title.Japanese, target="_blank", rel="noopener")
|
||||
//- RawIcon("google")
|
||||
if validator.IsValidDate(episode.AiringDate.Start)
|
||||
td.episode-airing-date-start.utc-airing-date(data-start-date=episode.AiringDate.Start, data-end-date=episode.AiringDate.End, data-episode-number=episode.Number)= episode.AiringDate.StartDateHuman()
|
||||
else
|
||||
td.episode-airing-date-start
|
Reference in New Issue
Block a user