Example #1
0
        public async Task <IActionResult> CreateEpisode(EpisodeCreateViewModel createModel, int id)
        {
            TVshow tvshowFromDb = await _mediaWebDbContext.TVShows.FirstOrDefaultAsync(m => m.Id == id);

            Episode newEpisode = new Episode()
            {
                Name          = StringEdits.FirstLettterToUpper(createModel.Name),
                Summary       = createModel.Summary,
                Season        = createModel.Season,
                EpisodeNumber = createModel.EpisodeNumber
            };

            tvshowFromDb.Seasons = createModel.Season;
            tvshowFromDb.Episodes.Add(newEpisode);

            if (tvshowFromDb.Seasons != 0)
            {
                if (newEpisode.Season > tvshowFromDb.Seasons)
                {
                    tvshowFromDb.Seasons = newEpisode.Season;
                }
            }
            else
            {
                tvshowFromDb.Seasons = newEpisode.Season;
            }

            _mediaWebDbContext.Update(tvshowFromDb);
            _mediaWebDbContext.Update(newEpisode);

            await _mediaWebDbContext.SaveChangesAsync();

            return(RedirectToAction("Index"));
        }
        public IActionResult CreateForExistingSerie(int serieId)
        {
            var serie = _mediaService.GetAllSeries().First(x => x.Id == serieId);

            EpisodeCreateViewModel Epimodel = new EpisodeCreateViewModel()
            {
                SerieId   = serie.Id,
                SerieName = serie.Name
            };

            return(View(Epimodel));
        }
Example #3
0
        public async Task <IActionResult> Store(EpisodeCreateViewModel model)
        {
            try
            {
                if (ModelState.IsValid)
                {
                    var imageName = GetUniqueFileName(model.Image.FileName);
                    var uploads   = Path.Combine(_environment.WebRootPath, "uploads");
                    var filePath  = Path.Combine(uploads, imageName);
                    using (var steam = System.IO.File.Create(filePath))
                    {
                        await model.Image.CopyToAsync(steam);
                    }

                    var thumb = GetUniqueFileName(model.Thumb.FileName);
                    uploads  = Path.Combine(_environment.WebRootPath, "uploads");
                    filePath = Path.Combine(uploads, thumb);
                    using (var steam = System.IO.File.Create(filePath))
                    {
                        await model.Thumb.CopyToAsync(steam);
                    }

                    Episode episode = new Episode
                    {
                        Title       = model.Title,
                        Description = model.Description,
                        Image       = imageName,
                        Thumb       = thumb,
                        VidelUrl    = model.VidelUrl,
                        CreatedAt   = DateTime.Now
                    };

                    _episodeRepository.Add(episode);
                    _episodeRepository.SaveChanges();

                    TempData["Success"] = "Episódio cadastrado com sucesso!";

                    return(RedirectToAction("Index"));
                }
            }
            catch (Exception exception)
            {
                TempData["Error"] = "Erro ao cadastrar episódio";
                _logger.LogError("Episode store error: " + exception);
            }

            return(View("Create", model));
        }
        public IActionResult AddEpisode(int serieId)
        {
            var selectedSerie = _mediaService.GetAllSeries().First(serie => serie.Id == serieId);


            selectedSerie.Seasons = _mediaService.GetAllSeasons().Where(z => z.Serie.Id == serieId).ToList();
            var Seasonen = selectedSerie.Seasons == null ? new List <Season>() : selectedSerie.Seasons.ToList();

            EpisodeCreateViewModel Epimodel = new EpisodeCreateViewModel()
            {
                SerieName       = selectedSerie.Name,
                PossibleSeasons = Seasonen,
                ReleaseDate     = DateTime.Now
            };

            return(View(Epimodel));
        }
        public IActionResult Create(EpisodeCreateViewModel model)
        {
            var serieId = model.SerieId;

            if (model.SeasonId == 0)
            {
                Season newSeason = new Season()
                {
                    Serie    = _mediaService.GetAllSeries().FirstOrDefault(ser => ser.Id == serieId),
                    SeasonNr = _mediaService.GetAllSeasons().Where(Season => Season.Serie.Id == serieId).Count() + 1,
                    Episodes = new List <Episode>()
                };
                _mediaService.InsertSeason(newSeason);
                _mediaService.SaveChanges();
                var season = _mediaService.GetAllSeasons().First(sei => sei.Id == newSeason.Id);
                _mediaService.SaveChanges();

                season.Episodes.Add(new Episode()
                {
                    Description = model.Description,
                    Duration    = model.Duration,
                    ReleaseDate = model.ReleaseDate,
                    Titel       = model.Titel,
                    IMDBLink    = model.IMDBLink,
                    Season      = newSeason
                });
                _mediaService.SaveChanges();
            }
            else
            {
                var Season = _mediaService.GetAllSeasons().First(Season => Season.Serie.Id == serieId && Season.SeasonNr == model.SeasonId);
                Season.Episodes.Add(new Episode()
                {
                    Description = model.Description,
                    Duration    = model.Duration,
                    ReleaseDate = model.ReleaseDate,
                    Titel       = model.Titel,
                    IMDBLink    = model.IMDBLink,
                    Season      = Season
                });
                _mediaService.SaveChanges();
            }


            return(RedirectToAction("Details", "Serie", new { Id = serieId }));
        }
        public IActionResult Create(int id)
        {
            var foundSerie = _mediaService.GetAllSeries().First(s => s.Id == id);
            var Seasonen   = _mediaService.GetAllSeasons().Where(sz => sz.Serie.Id == id);

            if (!IsAanwezig(Seasonen))
            {
                CreateNewSeasonVoorSerie(foundSerie);
            }
            var currentUserId = this._signInManager.UserManager.GetUserId(HttpContext.User);

            EpisodeCreateViewModel vm = new EpisodeCreateViewModel()
            {
                SerieId         = foundSerie.Id,
                SerieName       = foundSerie.Name,
                PossibleSeasons = GetSeasonenInSerie(foundSerie),
                ReleaseDate     = DateTime.Now,
                MediaUser       = _currentMediaUser,
                MediaUserId     = currentUserId
            };

            return(View(vm));
        }