public async Task <IActionResult> Edit(CinemaEditViewModel model, CancellationToken token, string returnUrl = null) { AddBreadcrumb("Cinemas", "/Cinema/All"); AddBreadcrumb("Edit", "/Cinema/Edit"); ViewData["ReturnUrl"] = returnUrl; if (ModelState.IsValid) { var user = await _userManager.FindByIdAsync(_userManager.GetUserId(User)) as IdentityUser; var userSession = await _userSessionRepository.FindByUserIdAsync(Guid.Parse(user.Id), token); var cinema = await _cinemaRepository.FindByIdAsync(userSession.CurrentCinemaId, token); cinema.Name = model.Name; cinema.Address = model.Address; cinema.Phone = model.Phone; await _cinemaRepository.UpdateAsync(cinema, token); return(RedirectToAction(nameof(All), "Cinema")); } return(View(model)); }
public async Task <IActionResult> Edit(CinemaEditViewModel cinemaEditViewModel) { if (!this.ModelState.IsValid) { return(this.View(cinemaEditViewModel)); } await this.cinemasService.EditAsync(cinemaEditViewModel); return(this.RedirectToAction("GetAll", "Cinemas", new { area = "Administration" })); }
public async Task CheckIfEditingCinemaReturnsNullReferenceException() { this.SeedDatabase(); var cinemaEditViewModel = new CinemaEditViewModel { Id = 3, }; var exception = await Assert .ThrowsAsync <NullReferenceException>(async() => await this.cinemasService.EditAsync(cinemaEditViewModel)); Assert.Equal(string.Format(ExceptionMessages.CinemaNotFound, cinemaEditViewModel.Id), exception.Message); }
public async Task CheckIfEditingCinemaWorksCorrectly() { this.SeedDatabase(); var cinemaEditViewModel = new CinemaEditViewModel { Id = this.firstCinema.Id, Name = "Changed Cinema name", Address = "Changed Cinema address", }; await this.cinemasService.EditAsync(cinemaEditViewModel); Assert.Equal(cinemaEditViewModel.Name, this.firstCinema.Name); Assert.Equal(cinemaEditViewModel.Address, this.firstCinema.Address); }
public async Task EditAsync(CinemaEditViewModel cinemaEditViewModel) { var cinema = this.cinemasRepository.All().FirstOrDefault(g => g.Id == cinemaEditViewModel.Id); if (cinema == null) { throw new NullReferenceException( string.Format(ExceptionMessages.CinemaNotFound, cinemaEditViewModel.Id)); } cinema.Name = cinemaEditViewModel.Name; cinema.Address = cinemaEditViewModel.Address; cinema.ModifiedOn = DateTime.UtcNow; this.cinemasRepository.Update(cinema); await this.cinemasRepository.SaveChangesAsync(); }
public async Task <IActionResult> Edit(CinemaEditViewModel dto) { try { if (!ModelState.IsValid) { return(View(dto)); } var cinema = mapper.Map <Cinema>(dto); await cinemaService.UpdateAsync(cinema); return(RedirectToAction(nameof(Details), new { id = cinema.Id })); } catch { return(RedirectToAction("Index", "Home")); } }
public async Task <IActionResult> Edit(CancellationToken token) { AddBreadcrumb("Cinemas", "/Cinema/All"); AddBreadcrumb("Edit", "/Cinema/Edit"); var user = await _userManager.FindByIdAsync(_userManager.GetUserId(User)) as IdentityUser; var userSession = await _userSessionRepository.FindByUserIdAsync(Guid.Parse(user.Id), token); var cinema = await _cinemaRepository.FindByIdAsync(userSession.CurrentCinemaId, token); var viewModel = new CinemaEditViewModel { Name = cinema.Name, Address = cinema.Address, Phone = cinema.Phone }; return(View(viewModel)); }