diff --git a/templates/anime.gohtml b/templates/anime.gohtml
index dcfef2b..9a9da3e 100644
--- a/templates/anime.gohtml
+++ b/templates/anime.gohtml
@@ -120,12 +120,7 @@
- {{$imageUrl := "https://placehold.co/400x600?text=No+Image"}}
- {{if $anime.Images.Webp.LargeImageURL}}
- {{$imageUrl = $anime.Images.Webp.LargeImageURL}}
- {{else if $anime.Images.Jpg.LargeImageURL}}
- {{$imageUrl = $anime.Images.Jpg.LargeImageURL}}
- {{end}}
+ {{$imageUrl := posterURL $anime.Images.Webp.LargeImageURL $anime.Images.Jpg.LargeImageURL 400 600}}
diff --git a/templates/components/anime_card.gohtml b/templates/components/anime_card.gohtml
index 08418b6..98ed7c5 100644
--- a/templates/components/anime_card.gohtml
+++ b/templates/components/anime_card.gohtml
@@ -7,12 +7,7 @@
{{$hasTopBadge := .HasTopBadge}}
{{$dataId := printf "id-%d" $anime.MalID}}
-{{$imageUrl := "https://placehold.co/400x600?text=No+Image"}}
-{{if $anime.Images.Webp.LargeImageURL}}
- {{$imageUrl = $anime.Images.Webp.LargeImageURL}}
-{{else if $anime.Images.Jpg.LargeImageURL}}
- {{$imageUrl = $anime.Images.Jpg.LargeImageURL}}
-{{end}}
+{{$imageUrl := posterURL $anime.Images.Webp.LargeImageURL $anime.Images.Jpg.LargeImageURL 400 600}}
{{$displayTitle := $anime.DisplayTitle}}
diff --git a/templates/renderer.go b/templates/renderer.go
index 023f2c1..d457acd 100644
--- a/templates/renderer.go
+++ b/templates/renderer.go
@@ -27,28 +27,30 @@ var Module = fx.Options(
func ProvideRenderer() (*Renderer, error) {
funcs := template.FuncMap{
- "dict": dict,
- "list": func(items ...any) []any { return items },
- "json": jsonAttr,
- "browseURL": browseURL,
- "genresParams": genresParams,
- "hasGenre": hasGenre,
- "add": func(a, b int) int { return a + b },
- "sub": func(a, b int) int { return a - b },
- "mul": func(a, b float64) float64 { return a * b },
- "imul": func(a, b int) int { return a * b },
- "div": div,
- "ceilDiv": ceilDiv,
- "idiv": idiv,
- "atoi": atoi,
- "toFloat": func(a int) float64 { return float64(a) },
- "seq": seq,
- "min": func(a, b int) int { return min(a, b) },
- "int": toInt,
- "percent": percent,
- "formatDate": formatDate,
- "nextSort": nextSort,
- "urlquery": url.QueryEscape,
+ "dict": dict,
+ "list": func(items ...any) []any { return items },
+ "json": jsonAttr,
+ "browseURL": browseURL,
+ "genresParams": genresParams,
+ "hasGenre": hasGenre,
+ "add": func(a, b int) int { return a + b },
+ "sub": func(a, b int) int { return a - b },
+ "mul": func(a, b float64) float64 { return a * b },
+ "imul": func(a, b int) int { return a * b },
+ "div": div,
+ "ceilDiv": ceilDiv,
+ "idiv": idiv,
+ "atoi": atoi,
+ "toFloat": func(a int) float64 { return float64(a) },
+ "seq": seq,
+ "min": func(a, b int) int { return min(a, b) },
+ "int": toInt,
+ "percent": percent,
+ "formatDate": formatDate,
+ "nextSort": nextSort,
+ "urlquery": url.QueryEscape,
+ "posterURL": posterURL,
+ "episodeRangeStart": episodeRangeStart,
}
pages, err := fs.Glob(templateFS, "*.gohtml")
diff --git a/templates/schedule.gohtml b/templates/schedule.gohtml
index 44f0950..b261831 100644
--- a/templates/schedule.gohtml
+++ b/templates/schedule.gohtml
@@ -91,12 +91,7 @@
{{range .Animes}}
{{$anime := .}}
- {{$imageUrl := "https://placehold.co/200x300?text=No+Image"}}
- {{if $anime.Images.Webp.LargeImageURL}}
- {{$imageUrl = $anime.Images.Webp.LargeImageURL}}
- {{else if $anime.Images.Jpg.LargeImageURL}}
- {{$imageUrl = $anime.Images.Jpg.LargeImageURL}}
- {{end}}
+ {{$imageUrl := posterURL $anime.Images.Webp.LargeImageURL $anime.Images.Jpg.LargeImageURL 200 300}}
@@ -20,7 +20,7 @@
-