diff options
Diffstat (limited to 'controllers/anime.go')
| -rw-r--r-- | controllers/anime.go | 18 |
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 ( |
