Exemple #1
0
        private bool AddEpisodeInfo(ShowViewModel model)
        {
            string          urlPath = String.Format(Constants.GetEpisode, model.Id, model.CurrentSeason, model.CurrentEpisode);
            EpisodeInfoRoot ep;

            try
            {
                ep = WebParser <EpisodeInfoRoot> .GetInfo(urlPath);
            }
            catch (Exception)
            {
                return(false);
            }

            model.UpdateEpisodeInfo(ep.data);

            return(true);
        }
Exemple #2
0
        public bool NextEpisode(int id)
        {
            ShowViewModel toBeChanged = views.FirstOrDefault(v => v.Id == id);
            Show          chosen      = tvShows.FirstOrDefault(s => s.Id == id);

            if (chosen != null)
            {
                views.Remove(toBeChanged);

                chosen.CurrentEpisode++;
                Thread save = new Thread(SaveShows);
                save.Start();

                toBeChanged.CurrentEpisode++;
                if (!AddEpisodeInfo(toBeChanged))
                {
                    if (!IsOngoing(chosen))
                    {
                        RemoveShow(id);
                        return(false);
                    }
                    else
                    {
                        chosen.CurrentSeason++;
                        chosen.CurrentEpisode = 1;
                        toBeChanged.CurrentSeason++;
                        toBeChanged.CurrentEpisode = 1;

                        toBeChanged.UpdateEpisodeInfo();
                    }
                }

                HelperFunctions.PutInTheRightPlace <ShowViewModel>(views, toBeChanged);

                return(true);
            }

            return(false);
        }