Ejemplo n.º 1
0
        public ActionResult <Series.AniDB> GetSeriesAniDBDetails(int id)
        {
            var ser = RepoFactory.AnimeSeries.GetByID(id);

            if (ser == null)
            {
                return(BadRequest("No Series with ID"));
            }
            var anime = ser.GetAnime();

            if (anime == null)
            {
                return(BadRequest("No AniDB_Anime for Series"));
            }
            return(Series.GetAniDBInfo(HttpContext, anime));
        }
Ejemplo n.º 2
0
        public ActionResult <List <Series> > GetSeries(int filterID, int groupID)
        {
            var grp = RepoFactory.AnimeGroup.GetByID(groupID);

            if (grp == null)
            {
                return(BadRequest("No Group with ID"));
            }
            if (filterID == 0)
            {
                return(grp.GetSeries().Where(a => User.AllowedSeries(a)).Select(a => new Series(HttpContext, a))
                       .ToList());
            }

            var f = RepoFactory.GroupFilter.GetByID(filterID);

            if (f == null)
            {
                return(BadRequest("No Filter with ID"));
            }

            if (f.ApplyToSeries != 1)
            {
                return(grp.GetSeries().Where(a => User.AllowedSeries(a)).Select(a => new Series(HttpContext, a))
                       .ToList());
            }

            if (!f.SeriesIds.ContainsKey(User.JMMUserID))
            {
                return(new List <Series>());
            }

            return(f.SeriesIds[User.JMMUserID].Select(id => RepoFactory.AnimeSeries.GetByID(id))
                   .Where(ser => ser?.AnimeGroupID == groupID).Select(ser => new Series(HttpContext, ser)).OrderBy(a =>
                                                                                                                   Series.GetAniDBInfo(HttpContext, RepoFactory.AniDB_Anime.GetByAnimeID(a.IDs.ID)).AirDate)
                   .ToList());
        }