Esempio n. 1
0
        public async Task EditDestination(EditDestinationViewModel model)
        {
            byte[] file = null;
            if (model.Image.Length > 0)
            {
                using (var ms = new MemoryStream())
                {
                    model.Image.CopyTo(ms);
                    file = ms.ToArray();
                }
            }

            var destination = this.destRepository.All().FirstOrDefault(x => x.Id == model.Id);

            if (destination != null)
            {
                destination.Image         = file;
                destination.Level         = model.Level;
                destination.StartDate     = model.StartDate;
                destination.EndDate       = model.EndDate;
                destination.EndDateToJoin = model.EndDateToJoin;
                destination.Naame         = model.Naame;
                destination.Description   = model.Description;

                await this.destRepository.SaveChangesAsync();
            }
        }
        public async Task EditDestination_ShouldEditDestinationCorrectly()
        {
            var destRepoBuilder = new DestinationsRepositoryBuilder();
            var destRepo        = destRepoBuilder
                                  .WithAll()
                                  .Build();

            var sut = new DestinationService(destRepo, null, null, null, null, null, null, Mapper);

            var editDestinationViewModel = new EditDestinationViewModel
            {
                Id            = "2",
                Image         = SetupFileMock().Object,
                Description   = "nnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnnn",
                Level         = (LevelOfDifficulty)2,
                Naame         = "Niki",
                StartDate     = DateTime.Now.AddDays(3),
                EndDateToJoin = DateTime.Now.AddDays(1),
                EndDate       = DateTime.Now.AddDays(5)
            };


            await sut.EditDestination(editDestinationViewModel);

            var newdest = destRepo.All().FirstOrDefault(x => x.Id == "2");

            var actual = Mapper.Map <EditDestinationViewModel>(newdest);

            Assert.Equal(editDestinationViewModel, actual, new EditDestinationViewModelComparer());
        }
Esempio n. 3
0
        public IActionResult Edit(EditDestinationViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                Destination destination = context.Destinations.Find(viewModel.Id);

                destination.Name           = viewModel.Name;
                destination.Street         = viewModel.Street;
                destination.City           = viewModel.City;
                destination.State          = viewModel.State;
                destination.Zipcode        = viewModel.Zipcode;
                destination.Description    = viewModel.Description;
                destination.Website        = viewModel.Website;
                destination.OutdoorSeating = viewModel.OutdoorSeating;
                destination.BikeRacks      = viewModel.BikeRacks;
                destination.Restrooms      = viewModel.Restrooms;
                destination.Playground     = viewModel.Playground;
                destination.CategoryId     = viewModel.CategoryId;
                destination.TrailId        = viewModel.TrailId;

                if (viewModel.Image != null)
                {
                    string uniqueFileName = NewUploadedFile(viewModel);
                    destination.Image = uniqueFileName;
                }
                else
                {
                    destination.Image = destination.Image;
                }
            }
            context.SaveChanges();
            return(Redirect("/Destination/Detail/" + viewModel.Id));
        }
Esempio n. 4
0
        public IActionResult Edit(int id)
        {
            Destination d = context.Destinations.Find(id);
            List <DestinationCategory> dc = context.DestinationCategories.ToList();
            List <Trail> t = context.Trails.ToList();

            EditDestinationViewModel viewModel = new EditDestinationViewModel(d, dc, t);

            return(View(viewModel));
        }
Esempio n. 5
0
        public async Task <ActionResult> SaveDestinationAsync(EditDestinationViewModel model)
        {
            _CheckForAdminAccess();

            if (model != null)
            {
                await AdminUtility.SaveDestination(model.DbObject);
            }

            return(RedirectToAction("EditDestination", new { @id = model.DbObject.Id }));
        }
Esempio n. 6
0
        public async Task <IActionResult> Edit(EditDestinationViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(this.View(model));
            }

            await this.destinationService.EditDestination(model);

            return(Redirect($"/Destinations/Details/{model.Id}"));
        }
Esempio n. 7
0
        public ActionResult EditDestination(int id)
        {
            _CheckForAdminAccess();

            var context = new TravelogyDevEntities1();
            var _model  = new EditDestinationViewModel
            {
                DbObject        = context.Destinations.Find(id),
                SubDestinations = context.SubDestinations.Where(p => p.DestinationId == id),
                Interests       = context.DestinationInterests.Where(p => p.DestinationId == id),
                Activities      = context.DestinationActivities.Where(p => p.DestinationId == id),
                CostObjects     = context.DestinationCosts.Where(p => p.DestinationId == id)
            };

            return(View(_model));
        }
Esempio n. 8
0
        private string NewUploadedFile(EditDestinationViewModel model)
        {
            string uniqueFileName = null;

            if (model.Image != null)
            {
                string uploadsFolder = Path.Combine(webHostEnvironment.WebRootPath, "images");
                uniqueFileName = Guid.NewGuid().ToString() + "_" + model.Image.FileName;
                string filePath = Path.Combine(uploadsFolder, uniqueFileName);
                using (var fileStream = new FileStream(filePath, FileMode.Create))
                {
                    model.Image.CopyTo(fileStream);
                }
            }
            return(uniqueFileName);
        }