public async Task <IActionResult> Edit(DirectorEditViewModel directorEditViewModel)
        {
            if (!this.ModelState.IsValid)
            {
                return(this.View(directorEditViewModel));
            }

            await this.directorsService.EditAsync(directorEditViewModel);

            return(this.RedirectToAction("GetAll", "Directors", new { area = "Administration" }));
        }
        public async Task CheckIfEditingDirectorReturnsNullReferenceException()
        {
            this.SeedDatabase();

            var directorEditViewModel = new DirectorEditViewModel
            {
                Id = 3,
            };

            var exception = await Assert
                            .ThrowsAsync <NullReferenceException>(async() => await this.directorsService.EditAsync(directorEditViewModel));

            Assert.Equal(string.Format(ExceptionMessages.DirectorNotFound, directorEditViewModel.Id), exception.Message);
        }
Exemple #3
0
        public ActionResult DirectorEdit(DirectorEditViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                var directorDto = FilmViewerMapper.Mapper.Map <DirectorDetailsDto>(viewModel);

                _directorService.EditDirector(directorDto);

                TempData[UserMessages.UserMessage] = new MessageViewModel()
                {
                    CssClass = "alert-success",
                    Message  = Resources.DirectorEditedSuccesfully
                };
            }
            return(RedirectToAction("ViewDirectors", "Moderator"));
        }
        public async Task CheckIfEditingDirectorWorksCorrectly()
        {
            this.SeedDatabase();

            var directorEditViewModel = new DirectorEditViewModel
            {
                Id        = this.firstDirector.Id,
                FirstName = "Changed Director first name",
                LastName  = "Changed Director last name",
            };

            await this.directorsService.EditAsync(directorEditViewModel);

            Assert.Equal(directorEditViewModel.FirstName, this.firstDirector.FirstName);
            Assert.Equal(directorEditViewModel.LastName, this.firstDirector.LastName);
        }
Exemple #5
0
        public async Task EditAsync(DirectorEditViewModel directorEditViewModel)
        {
            var director = this.directorsRepository.All().FirstOrDefault(d => d.Id == directorEditViewModel.Id);

            if (director == null)
            {
                throw new NullReferenceException(
                          string.Format(ExceptionMessages.DirectorNotFound, directorEditViewModel.Id));
            }

            director.FirstName  = directorEditViewModel.FirstName;
            director.LastName   = directorEditViewModel.LastName;
            director.ModifiedOn = DateTime.UtcNow;

            this.directorsRepository.Update(director);
            await this.directorsRepository.SaveChangesAsync();
        }
Exemple #6
0
        // GET: Directors/Edit/5
        #region Edit Get 1 eski hlai
        //public ActionResult Edit(int? id) // 1
        //{
        //    if (id == null)
        //    {
        //        return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
        //    }
        //    Director director = db.Directors.Find(id);
        //    if (director == null)
        //    {
        //        return HttpNotFound();
        //    }
        //    var movies = db.Movies.Select(e => new SelectListItem()
        //    {
        //        Value = e.Id.ToString(),
        //        Text = e.Name
        //    }).ToList();
        //    var movieIds = director.MovieDirectors.Select(e => e.MovieId).ToList();
        //    ViewBag.Movies = new MultiSelectList(movies, "Value", "Text", movieIds);
        //    return View(director);
        //}
        #endregion
        public ActionResult Edit(int?id)
        {
            if (!id.HasValue)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var movies = db.Movies.Select(e => new SelectListItem()
            {
                Value = e.Id.ToString(),
                Text  = e.Name
            }).ToList();

            var director = db.Directors.Find(id.Value);
            //List<int> _movieIds = db.MovieDirectors.Where(e => e.DirectorId == id.Value).Select(e => e.MovieId).ToList();// 1. yol
            List <int>            _movieIds = director.MovieDirectors.Select(e => e.MovieId).ToList();// ALOO SORRR
            DirectorEditViewModel model     = new DirectorEditViewModel();

            model.Director = director;
            model.movieIds = _movieIds;
            model.Movies   = new MultiSelectList(movies, "Value", "Text", model.movieIds);//

            return(View("EditNew", model));
        }
Exemple #7
0
        //public ActionResult Edit([Bind(Include = "Id,Name,Surname,Retired")] Director director, List<int> movieIds) //1
        //{
        //    var dbDirector = db.Directors.Find(director.Id);
        //    dbDirector.Name = director.Name;
        //    dbDirector.Surname = director.Surname;
        //    dbDirector.Retired = director.Retired;
        //    var dbMovieDirectors = db.MovieDirectors.Where(e => e.DirectorId == director.Id).ToList();
        //    foreach (var dbMovieDirector in dbMovieDirectors)
        //    {
        //        db.MovieDirectors.Remove(dbMovieDirector);
        //    }
        //    dbDirector.MovieDirectors = movieIds.Select(e => new MovieDirector()
        //    {
        //        MovieId = e,
        //        DirectorId = director.Id
        //    }).ToList();
        //    //if (ModelState.IsValid)
        //    //{
        //    //    db.Entry(director).State = EntityState.Modified;
        //    //    db.SaveChanges();
        //    //    return RedirectToAction("Index");
        //    //}
        //    DirectorValidator validator = new DirectorValidator();
        //    ValidationResult result = validator.Validate(director);
        //    if (result.IsValid)
        //    {
        //        db.Entry(dbDirector).State = EntityState.Modified;
        //        db.SaveChanges();
        //        return RedirectToAction("Index");
        //    }

        //    return View(director);
        //}
        #endregion
        public ActionResult Edit(DirectorEditViewModel directorEditViewModel)//*****
        {
            if (ModelState.IsValid)
            {
                var director = db.Directors.Find(directorEditViewModel.Director.Id);
                director.Name    = directorEditViewModel.Director.Name;
                director.Surname = directorEditViewModel.Director.Surname;
                director.Retired = directorEditViewModel.Director.Retired;
                var movieDirectors = db.MovieDirectors.Where(e => e.DirectorId == director.Id).ToList();
                foreach (var movieDirector in movieDirectors)
                {
                    db.MovieDirectors.Remove(movieDirector);
                }
                director.MovieDirectors = directorEditViewModel.movieIds.Select(e => new MovieDirector()
                {
                    DirectorId = director.Id,
                    MovieId    = e
                }).ToList();
                db.Entry(director).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }
            return(View(directorEditViewModel));
        }