public async Task <IActionResult> Edit(int id, [Bind("Id,ContactAddressLine1,ContactAddressLine2,ContactAddressLine3,ContactAddressLine4,Postcode,City,Country")] VenueAddress venueAddress) { if (id != venueAddress.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(venueAddress); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!VenueAddressExists(venueAddress.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } return(View(venueAddress)); }
public async Task <IActionResult> Create([Bind("Id,ContactAddressLine1,ContactAddressLine2,ContactAddressLine3,ContactAddressLine4,Postcode,City,Country")] VenueAddress venueAddress) { if (ModelState.IsValid) { _context.Add(venueAddress); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } return(View(venueAddress)); }
public async Task <VenueResponse> EditVenueAsync(VenueRequest venue, Guid venueId) { LocationIqReverseResponse locationResponse = await _locationIqProvider.GetLocationDetailsAsync(venue.Postcode); VenueAddress venueAddress = locationResponse.MapAddressProperties(venue.BuildingNameOrNumber); VenueDto venueDto = venue.MapRequestToDto(Guid.Empty, venueAddress); await _venueRepo.EditVenueAsync(venueDto); return(await GetVenueAsync(venueId)); }
public static string MapDisplayNameProperties(this VenueAddress address) { StringBuilder sb = new StringBuilder(); sb.Append(AppendAsDisplayName(address.BuildingNameOrNumber)) .Append(AppendAsDisplayName(address.Road)) .Append(AppendAsDisplayName(address.Village)) .Append(AppendAsDisplayName(address.Suburb)) .Append(AppendAsDisplayName(address.Town)) .Append(AppendAsDisplayName(address.County)) .Append(AppendAsDisplayName(address.State)) .Append(AppendAsDisplayName(address.Country)); sb.Remove(sb.Length - 2, 2); //Remove trailing comma return(sb.ToString()); }
public static VenueAddress MapAddressProperties(this LocationIqReverseResponse locationIqResponse, string buildingNameOrNumber) { VenueAddress mappedAddress = new VenueAddress { Postcode = locationIqResponse.Address.Postcode, Road = locationIqResponse.Address.Road, Town = locationIqResponse.Address.Town, Suburb = locationIqResponse.Address.Suburb, Village = locationIqResponse.Address.Village, County = locationIqResponse.Address.County, State = locationIqResponse.Address.State, Country = locationIqResponse.Address.Country, BuildingNameOrNumber = buildingNameOrNumber }; mappedAddress.DisplayName = mappedAddress.MapDisplayNameProperties(); return(mappedAddress); }
public async Task <VenueResponse> AddVenueAsync(VenueRequest venue) { LocationIqReverseResponse locationResponse = await _locationIqProvider.GetLocationDetailsAsync(venue.Postcode); VenueAddress venueAddress = locationResponse.MapAddressProperties(venue.BuildingNameOrNumber); VenueDto venueDto = venue.MapRequestToDto(Guid.Empty, venueAddress); Guid insertedVenueId = await _venueRepo.AddVenueAsync(venueDto); VenueLocation venueLocation = new VenueLocation { Location = locationResponse.MapToGeoJson(), VenueId = insertedVenueId }; await _locationIqProvider.AddGeoLocation(venueLocation); return(await GetVenueAsync(insertedVenueId)); }
public ActionResult Add(DashBoardViewModel model) { if (Session["User"] == null) { return(RedirectToAction("index", "User")); } int UserId = ((fyp_One.Models.User)Session["User"]).user_id; if (ModelState.IsValid) { VenueInfo venueinfo = new VenueInfo { verify = 1, venueName = model.venueName, venueType = model.venueType, capacity = Convert.ToInt32(model.capacity), venueWebsite = model.venueWebsite, venuePrice = Convert.ToInt32(model.venuePrice), user_id = UserId }; string[] features = model.venueFeature.Split(','); db.VenueInfoes.Add(venueinfo); db.SaveChanges(); foreach (var item in features) { if (item.Length > 0) { db.VenueFeatures.Add(new VenueFeature { Id_venueInfo = venueinfo.venueInfo_Id, venuefeatures = item }); } } db.SaveChanges(); VenueAddress venueaddress = new VenueAddress { vContactName = model.vContactName, vCity = model.vCity, vCountry = model.vCountry, vStreetAddress = model.vStreetAddress, vZipcode = Convert.ToInt32(model.vZipCode), vContactnum1 = model.vContactNumber1, vContactnum2 = model.vContactNumber2, venueInfo_id = venueinfo.venueInfo_Id, //, //vlang = Convert.ToDecimal(model.vlang), //vlong = Convert.ToDecimal(model.vlong) }; db.VenueAddresses.Add(venueaddress); db.SaveChanges(); string folderName = "venue-" + venueinfo.venueInfo_Id; string path = Server.MapPath("~/Uploads/" + folderName); Directory.CreateDirectory(path); int i = 1; foreach (var file in model.venuePhoto) { if (file != null) { string extension = Path.GetExtension(file.FileName); string namewithFullPath = Path.Combine(path + "/", i + extension); file.SaveAs(namewithFullPath); i++; } } return(RedirectToAction("Profile", "Dashboard")); } return(View(model)); }
public static VenueDto MapRequestToDto(this VenueRequest venue, Guid venueId, VenueAddress venueAddress) { return(new VenueDto { VenueId = venueId, Title = venue.Title, Description = venue.Description, MUrl = venue.MUrl, Summary = venue.Summary, Testimonial = venue.Testimonial, TestimonialContactEmail = venue.TestimonialContactEmail, TestimonialContactName = venue.TestimonialContactName, TestimonialContactOrganisation = venue.TestimonialContactOrganisation, VenueTypeId = venue.VenueTypeId, Postcode = venue.Postcode, BuildingNameOrNumber = venue.BuildingNameOrNumber, Road = venueAddress.Road, State = venueAddress.State, Country = venueAddress.Country, County = venueAddress.County, Village = venueAddress.Village, Town = venueAddress.Town, DisplayName = venueAddress.MapDisplayNameProperties() }); }