public ActionResult FinishRegistration([Bind(Include = "OrganizationId,Active,OrganizationName,ShipContact,DropContact,ShipZipcode,ShipState,ShipCity,DropZipcode,DropState,DropCity,DropStreetAddress,ShipStreetAddress,OrganizationDescription,OrganizationWebsite,PhoneNumber")] FinishRegistrationViewModel newOrganizationInfo) { var userId = User.Identity.GetUserId(); NonprofitOrganization organization = db.NonprofitOrganizations.Where(c => c.UserId == userId).Include(d => d.ShipAddress).Include(d => d.DropAddress).First(); if (ModelState.IsValid) { var dropAddId = AddDropAddressGetId(newOrganizationInfo); var shipAddId = AddShipAddressGetId(newOrganizationInfo); organization.DropAddress = db.Addresses.Where(c => c.AddressId == dropAddId).First(); organization.ShipAddress = db.Addresses.Where(c => c.AddressId == shipAddId).First(); organization.OrganizationDescription = newOrganizationInfo.OrganizationDescription; organization.RegistrationCompleted = true; db.Entry(organization).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Dashboard", "NonprofitOrganizations", organization.OrganizationId)); } ViewBag.DropOffAddress = new SelectList(db.Addresses, "AddressId", "ContactPerson", organization.DropOffAddress); ViewBag.ShippingAddress = new SelectList(db.Addresses, "AddressId", "ContactPerson", organization.ShippingAddress); return(View(newOrganizationInfo)); }
public int AddShipAddressGetId(FinishRegistrationViewModel newOrganizationInfo) { Address newShipAddress = new Address() { ContactPerson = newOrganizationInfo.ShipContact, StreetAddress = newOrganizationInfo.ShipStreetAddress, City = newOrganizationInfo.ShipCity, State = newOrganizationInfo.ShipState, Zipcode = newOrganizationInfo.ShipZipcode }; db.Addresses.Add(newShipAddress); db.SaveChanges(); return(newShipAddress.AddressId); }
public int AddDropAddressGetId(FinishRegistrationViewModel newOrganizationInfo) { //var gls = new GoogleLocationService(); //AddressData address = new AddressData() //{ // Address = newOrganizationInfo.DropStreetAddress, // City = newOrganizationInfo.DropCity, // State = newOrganizationInfo.DropState, // Zip = newOrganizationInfo.DropZipcode //}; //var latlong = gls.GetLatLongFromAddress(address); //var latitude = latlong.Latitude; //var longitude = latlong.Longitude; var address = newOrganizationInfo.DropStreetAddress + " " + newOrganizationInfo.DropCity + ", " + newOrganizationInfo.DropState + " " + newOrganizationInfo.DropZipcode; var locationService = new GoogleLocationService(); var point = locationService.GetLatLongFromAddress(address); var latitude = point.Latitude; var longitude = point.Longitude; Address newDropAddress = new Address() { ContactPerson = newOrganizationInfo.DropContact, StreetAddress = newOrganizationInfo.DropStreetAddress, City = newOrganizationInfo.DropCity, State = newOrganizationInfo.DropState, Zipcode = newOrganizationInfo.DropZipcode, Latitude = latitude, Longitude = longitude }; db.Addresses.Add(newDropAddress); db.SaveChanges(); return(newDropAddress.AddressId); }
public ActionResult FinishRegistration(int id) { //FinishRegistrationViewModel viewModel = new FinishRegistrationViewModel() //{ // OrganizationId = id, // OrganizationName = db.NonprofitOrganizations.Where(c => c.OrganizationId == id).First().OrganizationName //}; var organization = db.NonprofitOrganizations.Where(c => c.OrganizationId == id).First(); ViewBag.DropOffAddress = new SelectList(db.Addresses, "AddressId", "ContactPerson"); ViewBag.ShippingAddress = new SelectList(db.Addresses, "AddressId", "ContactPerson"); FinishRegistrationViewModel viewModel = new FinishRegistrationViewModel() { OrganizationId = organization.OrganizationId, OrganizationName = organization.OrganizationName, PhoneNumber = organization.OrganizationPhone, OrganizationWebsite = organization.OrganizationWebsite, }; return(View(viewModel)); }