public async Task <IActionResult> Update([Required] UpdateFilmViewModel viewModel) { if (viewModel.PosterFile != null && !CheckContentType(viewModel.PosterFile.ContentType)) { return(BadRequest()); } var user = await _userManager.GetUserAsync(User); var film = await _filmRepository.GetById(viewModel.Film.Id); if (film == null) { return(NotFound()); } if (user == null || user.Id != film.UserId) { return(Forbid()); } film.Name = viewModel.Film.Name; film.Description = viewModel.Film.Description; film.Director = viewModel.Film.Director; film.ReleaseYear = viewModel.Film.ReleaseYear; await _filmRepository.Update(film, viewModel.PosterFile); return(RedirectToAction("Index", "Film", new { pageNum = 1, pageSize = 10 })); }
public async Task <IActionResult> Create([Required] UpdateFilmViewModel viewModel) { if (viewModel.PosterFile == null) { return(BadRequest()); } if (!CheckContentType(viewModel.PosterFile.ContentType)) { return(BadRequest()); } var user = await _userManager.GetUserAsync(User); if (user == null) { return(Forbid()); } var entity = new Film() { Name = viewModel.Film.Name, Description = viewModel.Film.Description, Director = viewModel.Film.Director, ReleaseYear = viewModel.Film.ReleaseYear, UserId = user.Id }; await _filmRepository.Create(entity, viewModel.PosterFile); return(RedirectToAction("Index", "Film", new { pageNum = 1, pageSize = PageSize })); }