internal void ShowMovieEditForm(EditMovieViewModel data) { editMovieViewModel = data; dataGridView1.Hide(); gridTitleLabel.Hide(); editMoviePanel.Left = 0; editMoviePanel.Width = this.ClientSize.Width; editMoviePanel.Show(); data.NameChanged += (m => editFormNameText.Text = m.Name); data.YearChanged += (m => editFormYear.Text = m.Year.ToString()); data.CountryChanged += (m => editFormCountryText.Text = m.Country); data.ImageChanged += (m => { if (uploadMovieBox.Image != null) { ImagesHelper.DisposeImage(uploadMovieBox.Image); } uploadMovieBox.Image = ImagesHelper.FromFile(m.Image); }); data.DirectorChanged += (m => editFormDirector.Text = m.Director.Name); data.ActorsChanged += (m => { editFormActorsListBox.Items.Clear(); editFormActorsListBox.Items.AddRange(m.Actors.Select(x => x.Name).ToArray()); }); }
public IActionResult Edit(int id) { // Allows user to edit Properties of one of the Films in their Collection Film editFilm = _context.Films.SingleOrDefault(f => f.ID == id); // If editFilm with the passed in id exists and the User is associated with the Film or Admin, // then the ViewModel is seeded. Otherwise the User is redirected to the Index Action. if (editFilm != null) { List <MediaFormat> mediaFormats = _context.MediaFormats.ToList(); List <AudioFormat> audioFormats = _context.AudioFormats.ToList(); EditMovieViewModel editMovieViewModel = new EditMovieViewModel(mediaFormats, audioFormats, editFilm); editMovieViewModel.Genres = _filmServices.GetFilmGenreIds(id); editMovieViewModel.AvailableGenres = _context.Genres .Select(x => new SelectListItem { Value = x.ID.ToString(), Text = x.Name, Selected = editMovieViewModel.Genres.Contains(x.ID.ToString()) }) .ToList(); if (editFilm.UserID == _userManager.GetUserId(User) || User.IsInRole("Admin")) { editMovieViewModel.ID = id; } return(View(editMovieViewModel)); } return(RedirectToAction("Index")); }
public ActionResult Edit(int id) { if (!this.User.IsInRole(WebConstants.CanManageMoviesRole)) { return(this.RedirectToAction(nameof(this.Details), new { id = id })); } var movie = this.context .Movies .Include(x => x.Genre) .SingleOrDefault(x => x.Id == id); if (movie == null) { return(this.HttpNotFound()); } var viewModel = new EditMovieViewModel { Movie = movie, Genres = this.context.Genres.ToList() }; return(this.View(viewModel)); }
public ActionResult Edit(EditMovieViewModel editMovieViewModel) { if (ModelState.IsValid) { MembershipUser user = _membershipService.GetUser(User.Identity.Name); Movie movie = _movieRepository.Find(m => m.Id == editMovieViewModel.Id).FirstOrDefault(); if (movie == null) { return(RedirectToAction("MoveNotFound")); } else if (!IsValidUserForMovie(movie.aspnet_UsersUserId.ToString(), user)) { return(RedirectToAction("MoveNotFound")); } movie.Directors = editMovieViewModel.Directors; movie.GenreId = editMovieViewModel.GenreId; movie.Name = editMovieViewModel.Name; movie.Rating = editMovieViewModel.Rating; movie.Stars = editMovieViewModel.Stars; movie.Writers = editMovieViewModel.Writers; _movieRepository.Save(); return(RedirectToAction("Index")); } IEnumerable <Genre> genres = _genreRepository.GetAll(); editMovieViewModel.Genres = new SelectList(genres, "Id", "Name"); return(View(editMovieViewModel)); }
public ActionResult Edit(int id) { MembershipUser user = _membershipService.GetUser(User.Identity.Name); Movie movie = _movieRepository.Find(m => m.Id == id).FirstOrDefault(); if (movie == null) { return(RedirectToAction("MoveNotFound")); } else if (!IsValidUserForMovie(movie.aspnet_UsersUserId.ToString(), user)) { return(RedirectToAction("MoveNotFound")); } IEnumerable <Genre> genres = _genreRepository.GetAll(); var editMovieViewModel = new EditMovieViewModel { Directors = movie.Directors, Genres = new SelectList(genres, "Id", "Name"), Name = movie.Name, Rating = movie.Rating, Stars = movie.Stars, Writers = movie.Writers, Id = id, GenreId = movie.GenreId }; return(View(editMovieViewModel)); }
public ActionResult Details(int?id) { var movie = _db.Movies.Include(g => g.Genre).SingleOrDefault(m => m.Id == id); var genreTypes = _db.Genres.ToList(); var formatTypes = _db.Formats.ToList(); if (movie == null) { return(HttpNotFound()); } var viewModel = new EditMovieViewModel { Movie = movie, Genres = genreTypes, Formats = formatTypes }; if (User.IsInRole("Admin")) { return(View("Details", viewModel)); } else { return(View("ReadOnlyDetail", viewModel)); } }
public ActionResult Edit(Movie movie) { if (!this.User.IsInRole(WebConstants.CanManageMoviesRole)) { return(this.RedirectToAction(nameof(this.Details))); } if (!this.ModelState.IsValid) { var viewModel = new EditMovieViewModel { Movie = movie, Genres = this.context.Genres.ToList() }; return(this.View(viewModel)); } var movieFromDb = this.context .Movies .Single(x => x.Id == movie.Id); movieFromDb.Name = movie.Name; movieFromDb.ReleaseDate = movie.ReleaseDate; movieFromDb.GenreId = movie.GenreId; movieFromDb.NumberInStock = movie.NumberInStock; this.context.SaveChanges(); return(this.RedirectToAction(nameof(this.Index))); }
public ActionResult Create(Movie movie, int[] genreIds, HttpPostedFileBase image = null) { if (!ModelState.IsValid) { var genres = _context.Genres.ToList(); var viewModel = new EditMovieViewModel { Movie = movie, Genres = genres }; return(View("New", viewModel)); } if (image != null) { string fileName = Path.GetFileName(image.FileName); image.SaveAs(Server.MapPath("~/Files/" + fileName)); movie.Poster = fileName; } if (genreIds != null) { foreach (var genre in _context.Genres.Where(g => genreIds.Contains(g.Id))) { movie.Genres.Add(genre); } } _context.Movies.Add(movie); _context.SaveChanges(); return(RedirectToAction("Index")); }
public IActionResult Edit(int id, [Bind("Title,ReleaseDate,Genre,Price")] EditMovieViewModel editModel) { if (ModelState.IsValid) { try { var movie = new Movie { Id = id, Genre = editModel.Genre, Price = editModel.Price, Title = editModel.Title, ReleaseDate = editModel.ReleaseDate }; _context.Update(movie); _context.SaveChanges(); } catch (DbUpdateException) { if (!MovieExists(id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(editModel)); }
// GET: Movies/Edit/5 public async Task <IActionResult> Edit(int?id) { if (id == null) { return(NotFound()); } var movie = await _context.Movie.Include(m => m.Director).Include(m => m.MoviesActors).ThenInclude(m => m.Actor).SingleOrDefaultAsync(m => m.Id == id); var genres = await _context.Genre.ToListAsync(); if (movie == null) { return(NotFound()); } var viewModel = new EditMovieViewModel { Genres = genres, Name = movie.Name, Year = movie.Year, GenreId = movie.GenreId, Director = movie.Director, Description = movie.Description, ImgCode = movie.ImgCode, MoviesActors = movie.MoviesActors }; return(View(viewModel)); }
public ActionResult Save(EditMovieViewModel viewModel) { if (!ModelState.IsValid) { var vm = new EditMovieViewModel { Movie = viewModel.Movie, Genres = _context.Genres.ToList() }; return(View("Edit", vm)); } if (viewModel.Movie.ID == 0) { _context.Movies.Add(viewModel.Movie); } else { var movieInDb = _context.Movies.Include("Genre").Single(m => m.ID == viewModel.Movie.ID); movieInDb.Name = viewModel.Movie.Name; movieInDb.GenreId = viewModel.Movie.GenreId; movieInDb.DateAdded = viewModel.Movie.DateAdded; movieInDb.ReleaseDate = viewModel.Movie.ReleaseDate; movieInDb.StockCount = viewModel.Movie.StockCount; } _context.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult EditMovie(int id) { var repository = new MovieCatalogEntities(); var movie = repository.Movies.FirstOrDefault(m => m.MovieId == id); // if movie doesn't exist go home if (movie == null) { return(RedirectToAction("Index")); } EditMovieViewModel model = new EditMovieViewModel(); model.MovieId = movie.MovieId; model.Title = movie.Title; model.SelectedGenreId = movie.GenreId; model.SelectedRatingId = movie.RatingId; model.Genres = from g in repository.Genres select new SelectListItem { Text = g.GenreType, Value = g.GenreId.ToString() }; model.Ratings = from r in repository.Ratings select new SelectListItem { Text = r.RatingName, Value = r.RatingId.ToString() }; return(View(model)); }
public async Task <IActionResult> Create(EditMovieViewModel model) { if (!ModelState.IsValid) { return(View(await FillEditMovieViewModelLists(model))); } if (model.Poster == null) { ModelState.AddModelError("", "Выберите постер"); return(View(await FillEditMovieViewModelLists(model))); } var movie = _mapper.Map <Movie>(model); //TODO Здесь что-то вроде распределенной транзакции, поэтому нужен дополнительный функционал поддержания целостности данных //TODO Нужно вынести из контроллера в Core var posterFileName = await SavePoster(model.Poster); movie.PosterFileName = posterFileName; movie.Author = User.Identity.Name; _movieRepository.Create(movie); await _movieRepository.SaveAsync(); return(RedirectToAction($"Detail", new { id = movie.Id })); }
public ActionResult Edit(int?id) { if (id == null) { return(NotFound()); } var movie = context.Movies.Find(id); if (movie == null) { return(NotFound()); } var model = new EditMovieViewModel() { ID = movie.ID, Titel = movie.Titel, ReleaseDate = movie.ReleaseDate, Lenght = movie.Lenght, WantToWatch = movie.WantToWatch, Watched = movie.Watched, YoutubeTrailer = movie.YoutubeTrailer, }; ViewBag.PlaylistID = new SelectList(context.MoviePlaylists, "ID", "Naam"); return(View(model)); }
public async Task <IActionResult> Edit(EditMovieViewModel model) { if (!ModelState.IsValid) { return(View(await FillEditMovieViewModelLists(model))); } model.Author = User.Identity.Name; var movie = _mapper.Map(model, await _movieRepository.ReadAsync(model.MovieId)); if (movie.Author != User.Identity.Name) { return(StatusCode(StatusCodes.Status403Forbidden)); } //TODO Здесь что-то вроде распределенной транзакции, поэтому нужен дополнительный функционал поддержания целостности данных //TODO Нужно вынести из контроллера в Core if (model.Poster != null) { var posterFileName = await SavePoster(model.Poster); DeletePoster(movie.PosterFileName); movie.PosterFileName = posterFileName; } _movieRepository.Update(movie); await _movieRepository.SaveAsync(); return(RedirectToAction($"Detail", new { id = movie.Id })); }
public ActionResult EditMovie(int?id) { movieEntities db = new movieEntities(); UnitOfWork unitOfWork = new UnitOfWork(db); phim a = unitOfWork.Phim.SearchFor(x => x.id == id).FirstOrDefault(); EditMovieViewModel viewModel = new EditMovieViewModel(); viewModel.ID = a.id; viewModel.TenPhim = a.tenphim; viewModel.GioiThieu = a.gioithieuphim; viewModel.NgayCongChieu = a.ngaycongchieu; viewModel.DaoDien = a.daodien; viewModel.NamSanXuat = a.namsanxuat; viewModel.TongSoTap = (a.tongsotap ?? 0); viewModel.TheLoaiPhims = unitOfWork.Theloaiphim.GetAll().ToList(); viewModel.QuocGias = unitOfWork.Quocgia.GetAll().ToList(); viewModel.DienViens = unitOfWork.Dienvien.GetAll().ToList(); viewModel.UploadFiles = null; viewModel.SelectedTheLoais = a.phim_theloaiphim.Select(x => x.idtheloaiphim).ToList().ToArray(); viewModel.SelectedQuocGias = a.phim_quocgia.Select(x => x.idquocgia).ToList().ToArray(); viewModel.SelectedDienViens = a.phim_dienvien.Select(x => x.iddienvien).ToList().ToArray(); viewModel.AnhBia = a.anhbiaphim; return(View(viewModel)); }
public async Task <IActionResult> Edit(string id, EditMovieViewModel viewModel) { if (id != viewModel.Id) { return(NotFound()); } if (ModelState.IsValid) { var movie = this._mapper.Map <EditMovieViewModel, Movie>(viewModel); movie.Trailer = movie.Trailer.UrlToEmbedCode(); try { _dbContext.Update(movie); await _dbContext.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!MovieExists(movie.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(viewModel)); }
public ActionResult Edit(EditMovieViewModel editMovieViewModel) { if (ModelState.IsValid) { Movie movie = _movieRepository.Find(m => m.Id == editMovieViewModel.Id).FirstOrDefault(); if (movie == null) { return(RedirectToAction("MoveNotFound")); } movie.Directors = editMovieViewModel.Directors; movie.GenreId = editMovieViewModel.GenreId; movie.Name = editMovieViewModel.Name; movie.Rating = editMovieViewModel.Rating; movie.Stars = editMovieViewModel.Stars; movie.Writers = editMovieViewModel.Writers; _movieRepository.Save(); return(RedirectToAction("Index")); } IEnumerable <Genre> genres = _genreRepository.GetAll(); editMovieViewModel.Genres = new SelectList(genres, "Id", "Name"); return(View(editMovieViewModel)); }
public void Edit_WithMovieToEditFound_RedirectsToIndex() { IMembershipService membershipService = new FakeMembershipService(Enumerable.Empty <MembershipUser>()); var movies = new List <Movie>(); const int movieId = 42; movies.Add(new Movie { Id = movieId }); IRepository <Movie> movieRepository = new FakeMovieRepository(movies); IRepository <Genre> genreRepository = new FakeGenreRepository(); var movieController = new MovieController(movieRepository, genreRepository, membershipService); var editMovieViewModel = new EditMovieViewModel { Id = movieId, Directors = "Directors", GenreId = 1, Name = "Name", Rating = 3, Stars = "Stars", Writers = "Writers" }; var result = (RedirectToRouteResult)movieController.Edit(editMovieViewModel); Assert.IsTrue(string.Compare(result.Action(), "Index", true) == 0); }
public ActionResult Edit(int id) { Movie movie = _movieRepository.Find(m => m.Id == id).FirstOrDefault(); if (movie == null) { return(RedirectToAction("MoveNotFound")); } IEnumerable <Genre> genres = _genreRepository.GetAll(); var editMovieViewModel = new EditMovieViewModel { Directors = movie.Directors, Genres = new SelectList(genres, "Id", "Name"), Name = movie.Name, Rating = movie.Rating, Stars = movie.Stars, Writers = movie.Writers, Id = id, GenreId = movie.GenreId }; return(View(editMovieViewModel)); }
public ActionResult Add(EditMovieViewModel editMovieViewModel) { if (ModelState.IsValid) { MembershipUser user = _membershipService.GetUser(User.Identity.Name); if (user == null) { return(RedirectToAction("Register", "Account")); } var userKey = (Guid)user.ProviderUserKey; var movie = new Movie { Directors = editMovieViewModel.Directors, GenreId = editMovieViewModel.GenreId, Name = editMovieViewModel.Name, Rating = editMovieViewModel.Rating, Stars = editMovieViewModel.Stars, Writers = editMovieViewModel.Writers, aspnet_UsersUserId = userKey }; _movieRepository.Add(movie); _movieRepository.Save(); return(RedirectToAction("Index")); } IEnumerable <Genre> genres = _genreRepository.GetAll(); editMovieViewModel.Genres = new SelectList(genres, "Id", "Name"); return(View(editMovieViewModel)); }
public ActionResult Edit(int id, EditMovieViewModel model) { if (ModelState.IsValid) { var movie = context.Movies.Find(id); movie.Titel = model.Titel; movie.ReleaseDate = model.ReleaseDate; movie.Lenght = model.Lenght; movie.WantToWatch = model.WantToWatch; movie.Watched = model.Watched; movie.YoutubeTrailer = model.YoutubeTrailer; string uniqueFileName = null; if (model.Photo != null) { string UploadsFolder = Path.Combine(hostingEnvironment.WebRootPath, "images"); uniqueFileName = GetUniqueFileName(model.Photo.FileName); string filePath = Path.Combine(UploadsFolder, uniqueFileName); model.Photo.CopyTo(new FileStream(filePath, FileMode.Create)); movie.PhotoPath = uniqueFileName; } context.Movies.Update(movie); context.SaveChanges(); } return(RedirectToAction(nameof(Index))); }
public ActionResult EditMovie(EditMovieViewModel model) { var repository = new MovieCatalogEntities(); if (ModelState.IsValid) { Movie movie = new Movie(); movie.MovieId = model.MovieId; movie.Title = model.Title; movie.RatingId = model.SelectedRatingId; movie.GenreId = model.SelectedGenreId; repository.Entry(movie).State = EntityState.Modified; repository.SaveChanges(); return(RedirectToAction("Index")); } // validation failed, return them to the view model.Genres = from g in repository.Genres select new SelectListItem { Text = g.GenreType, Value = g.GenreId.ToString() }; model.Ratings = from r in repository.Ratings select new SelectListItem { Text = r.RatingName, Value = r.RatingId.ToString() }; return(View(model)); }
public IActionResult EditMovies([FromRoute] int id) { EditMovieModel editMovieModel = new EditMovieModel(_movies); EditMovieViewModel pageData = editMovieModel.GetData(id); return(View(pageData)); }
public async Task <IActionResult> Edit(EditMovieViewModel editMovieViewModel) { // Verify model data is valid and that the active User is the owner of the Film // or Admin. If so, the Film is then updated. The User is Redirected to the page of // the Film. if (ModelState.IsValid) { Film film = _context.Films.Single(f => f.ID == editMovieViewModel.ID); if (!(film.UserID == _userManager.GetUserId(User) || User.IsInRole("Admin"))) { film = new Film(); editMovieViewModel.ID = 0; } int id = await UpdateMovieAsync(editMovieViewModel, film); return(Redirect($"/Movie/ViewMovie/{id}")); //} //return RedirectToAction("Index"); } // If the model is not valid, it is re-seeded and returned to the View. editMovieViewModel.MediaFormats = editMovieViewModel.PopulateList(_context.MediaFormats.ToList()); editMovieViewModel.AudioFormats = editMovieViewModel.PopulateList(_context.AudioFormats.ToList()); editMovieViewModel.AvailableGenres = _context.Genres .Select(x => new SelectListItem { Value = x.ID.ToString(), Text = x.Name, Selected = editMovieViewModel.Genres.Contains(x.ID.ToString()) }) .ToList(); return(View(editMovieViewModel)); }
public void UpdateMovieDetails(EditMovieViewModel mvm) { var config = new MapperConfiguration(cfg => { cfg.CreateMap <EditMovieViewModel, Movies>(); cfg.IgnoreUnmapped(); }); IMapper mapper = config.CreateMapper(); Movies m = mapper.Map <EditMovieViewModel, Movies>(mvm); mr.UpdateMovieDetails(m); }
public IActionResult MovieCreate(EditMovieViewModel model, string MovieTitle, string CountryOfOrigin, string DirectorName, DateTime PremiereDate, DateTime EndDate, DateTime Length, string Poster, string Description) { var movie = new Movie() { Description = Description, EndDate = EndDate, Length = Length, Poster = Poster, PremiereDate = PremiereDate, Title = MovieTitle, MovieGenres = new List <MovieGenre>() }; var director = directorService.Get().Find(a => a.DirectorName == DirectorName); if (director != null) { movie.DirectorId = director.Id; movie.Director = director; } else { director = directorService.Add(new Director() { DirectorName = model.DirectorName }); movie.DirectorId = director.Id; movie.Director = director; } var genres = Request.Form["genre"]; foreach (var genre in genres) { var genreId = int.Parse(genre); movie.MovieGenres.Add(new MovieGenre() { GenreId = genreId, MovieId = movie.Id }); } var countryOfOrigin = countryOfOriginService.Get().Where(m => m.Name == CountryOfOrigin).FirstOrDefault(); if (countryOfOrigin != null) { movie.CountryOfOriginId = countryOfOrigin.Id; movie.CountryOfOrigin = countryOfOrigin; } else { countryOfOrigin = countryOfOriginService.Add(new CountryOfOrigin() { Name = model.CountryOfOrigin }); movie.CountryOfOriginId = countryOfOrigin.Id; movie.CountryOfOrigin = countryOfOrigin; } movieService.Add(movie); return(RedirectToAction("MovieTable")); }
private async Task <EditMovieViewModel> FillEditMovieViewModelLists(EditMovieViewModel model = null) { model ??= new EditMovieViewModel(); var producers = await _producerRepository.ReadAsync(x => true); model.Producers = new SelectList(producers, "Id", "FullName"); return(model); }
internal void SaveEditMovieViewModelState(EditMovieViewModel data, out string directorName, List <string> actorNames) { data.Name = editFormNameText.Text; data.Year = Int32.Parse(editFormYear.Text); directorName = editFormDirector.Text; for (int i = 0; i < editFormActorsListBox.Items.Count; i++) { actorNames.Add(editFormActorsListBox.Items[i].ToString()); } }
public ActionResult Edit(EditMovieViewModel vm) { if (ModelState.IsValid) { _movieManager.Save(vm); return(RedirectToAction("Index")); } return(View(vm)); }
public ActionResult EditMovie(EditMovieViewModel model, string facebookId, string oAuthToken) { Movie movie = MappingHelper.MapFromEditViewModelToMovie(model); Movie dbMovie = MovieService.UpdateMovie(movie); if (dbMovie != null) ViewBag.StatusMessage = "Movie edited."; else ViewBag.StatusMessage = "An error occured while editing the movie."; return View("Movie", dbMovie); }
public static Movie MapFromEditViewModelToMovie(EditMovieViewModel source) { Mapper.CreateMap<EditMovieViewModel, Movie>(); Movie movie = Mapper.Map<Movie>(source); return movie; }