public IActionResult EditUserDestination(EditUserDestinationViewModel viewModel) { if (ModelState.IsValid) { UserDestination destination = context.UserDestinations.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 = NewUploadedFileForUserDestination(viewModel); destination.Image = uniqueFileName; } else { destination.Image = destination.Image; } } context.SaveChanges(); return(Redirect("/Destination/NeedingAdminApproval")); }
public ApplicationLogicRoot(IPersistence persistence) { var noSqlPersistence = persistence; IUserLookup lookup = new UserLookup(noSqlPersistence); IConnectorDestination destination = new UserDestination(noSqlPersistence); _userUseCaseFactory = new UserUseCaseFactory(destination, lookup); }
public IActionResult EditUserDestination(int id) { UserDestination d = context.UserDestinations.Find(id); List <DestinationCategory> dc = context.DestinationCategories.ToList(); List <Trail> t = context.Trails.ToList(); EditUserDestinationViewModel viewModel = new EditUserDestinationViewModel(d, dc, t); return(View(viewModel)); }
public void ShouldPersistReceivedUserDto() { //GIVEN var persistence = Substitute.For <IPersistence>(); var userDestination = new UserDestination(persistence); var userDto = Any.Instance <UserDto>(); //WHEN userDestination.Save(userDto); //THEN persistence.Received(1).Save("Users", userDto); }
public EditUserDestinationViewModel(UserDestination destination, List <DestinationCategory> categories, List <Trail> trails) { Id = destination.Id; Name = destination.Name; Street = destination.Street; City = destination.City; State = destination.State; Zipcode = destination.Zipcode; Description = destination.Description; Website = destination.Website; OutdoorSeating = destination.OutdoorSeating; BikeRacks = destination.BikeRacks; Restrooms = destination.Restrooms; Playground = destination.Playground; ExistingImage = destination.Image; CategoryId = destination.CategoryId; TrailId = destination.TrailId; Category = new List <SelectListItem>(); foreach (var c in categories) { Category.Add(new SelectListItem { Value = c.Id.ToString(), Text = c.Name, }); } Trail = new List <SelectListItem>(); foreach (var t in trails) { Trail.Add(new SelectListItem { Value = t.Id.ToString(), Text = t.Name }); } }
public IActionResult NeedingAdminApproval(int id) { UserDestination destinationSelected = context.UserDestinations .Include(d => d.Trail) .Include(d => d.Category) .Single(d => d.Id == id); DestinationCategory category = context.DestinationCategories.Find(destinationSelected.CategoryId); Trail trail = context.Trails.Find(destinationSelected.TrailId); Destination newDestination = new Destination { Name = destinationSelected.Name, Street = destinationSelected.Street, City = destinationSelected.City, State = destinationSelected.State, Zipcode = destinationSelected.Zipcode, Description = destinationSelected.Description, Website = destinationSelected.Website, OutdoorSeating = destinationSelected.OutdoorSeating, BikeRacks = destinationSelected.BikeRacks, Restrooms = destinationSelected.Restrooms, Playground = destinationSelected.Playground, Category = category, Trail = trail, CategoryId = destinationSelected.CategoryId, TrailId = destinationSelected.TrailId, Image = destinationSelected.Image, UserId = destinationSelected.UserId }; context.Destinations.Add(newDestination); context.UserDestinations.Remove(destinationSelected); context.SaveChanges(); return(Redirect("/Destination")); }
public IActionResult Add(AddDestinationViewModel viewModel) { string uniqueFileName = UploadedFile(viewModel); if (ModelState.IsValid && User.IsInRole("Admin")) { var userId = _userManager.GetUserId(User); DestinationCategory category = context.DestinationCategories.Find(viewModel.CategoryId); Trail trail = context.Trails.Find(viewModel.TrailId); if (!viewModel.Website.StartsWith("http")) { viewModel.Website = "https://" + viewModel.Website; } Destination newDestination = new Destination { Name = viewModel.Name, Street = viewModel.Street, City = viewModel.City, State = viewModel.State, Zipcode = viewModel.Zipcode, Description = viewModel.Description, Website = viewModel.Website, OutdoorSeating = viewModel.OutdoorSeating, BikeRacks = viewModel.BikeRacks, Restrooms = viewModel.Restrooms, Playground = viewModel.Playground, Category = category, Trail = trail, CategoryId = viewModel.CategoryId, TrailId = viewModel.TrailId, Image = uniqueFileName, UserId = userId }; context.Destinations.Add(newDestination); context.SaveChanges(); int id = newDestination.Id; return(Redirect("/destination/detail/" + id)); } else if (ModelState.IsValid && User.Identity.IsAuthenticated) { var userId = _userManager.GetUserId(User); DestinationCategory category = context.DestinationCategories.Find(viewModel.CategoryId); Trail trail = context.Trails.Find(viewModel.TrailId); if (!viewModel.Website.StartsWith("http")) { viewModel.Website = "https://" + viewModel.Website; } UserDestination newUserDestination = new UserDestination { Name = viewModel.Name, Street = viewModel.Street, City = viewModel.City, State = viewModel.State, Zipcode = viewModel.Zipcode, Description = viewModel.Description, Website = viewModel.Website, OutdoorSeating = viewModel.OutdoorSeating, BikeRacks = viewModel.BikeRacks, Restrooms = viewModel.Restrooms, Playground = viewModel.Playground, Category = category, Trail = trail, CategoryId = viewModel.CategoryId, TrailId = viewModel.TrailId, Image = uniqueFileName, UserId = userId }; context.UserDestinations.Add(newUserDestination); context.SaveChanges(); return(Redirect("/Destination/UserDestinations/")); } //repopulate SelectListItems List <DestinationCategory> categories = context.DestinationCategories.ToList(); List <Trail> trails = context.Trails.ToList(); List <SelectListItem> categoryList = new List <SelectListItem>(); foreach (var c in categories) { categoryList.Add(new SelectListItem { Value = c.Id.ToString(), Text = c.Name }); } List <SelectListItem> trailList = new List <SelectListItem>(); foreach (var t in trails) { trailList.Add(new SelectListItem { Value = t.Id.ToString(), Text = t.Name }); } viewModel.Category = categoryList; viewModel.Trail = trailList; return(View(viewModel)); }