Beispiel #1
0
        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));
        }
Beispiel #2
0
        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));
        }
Beispiel #3
0
        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);
        }
Beispiel #6
0
        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));
        }
Beispiel #8
0
 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()
     });
 }