aboutsummaryrefslogtreecommitdiff
path: root/controllers/anime.go
diff options
context:
space:
mode:
Diffstat (limited to 'controllers/anime.go')
-rw-r--r--controllers/anime.go18
1 files changed, 18 insertions, 0 deletions
diff --git a/controllers/anime.go b/controllers/anime.go
index 3f5f692..85b1d72 100644
--- a/controllers/anime.go
+++ b/controllers/anime.go
@@ -27,6 +27,24 @@ func GetAnime(c *fiber.Ctx) error {
return c.JSON(anime)
}
+func GetAnimeEpisodes(c *fiber.Ctx) error {
+ id := meta.Request(c).MustHave().Param("id")
+ provider := meta.Request(c).Default("mal").Query("provider")
+
+ switch provider {
+ case "mal", "anilist":
+ default:
+ return BadRequest(c, errors.New("invalid provider"))
+ }
+
+ episodes, err := repositories.GetAnimeEpisodes(enums.MappingType(provider), id)
+ if err != nil {
+ return NotFound(c, err)
+ }
+
+ return c.JSON(episodes)
+}
+
// -- Old Code Below --
// import (