public ActionResult AddressEdit(int addressId) { if (!_workContext.CurrentCustomer.IsRegistered()) return new HttpUnauthorizedResult(); var customer = _workContext.CurrentCustomer; //find address (ensure that it belongs to the current customer) var address = customer.Addresses.FirstOrDefault(a => a.Id == addressId); if (address == null) //address is not found return RedirectToRoute("CustomerAddresses"); var model = new CustomerAddressEditModel(); model.Address.PrepareModel(address: address, excludeProperties: false, addressSettings: _addressSettings, localizationService: _localizationService, stateProvinceService: _stateProvinceService, addressAttributeService: _addressAttributeService, addressAttributeParser: _addressAttributeParser, loadCountries: () => _countryService.GetAllCountries(_workContext.WorkingLanguage.Id)); return View(model); }
public ActionResult AddressEdit(CustomerAddressEditModel model, int addressId, FormCollection form) { if (!_workContext.CurrentCustomer.IsRegistered()) return new HttpUnauthorizedResult(); var customer = _workContext.CurrentCustomer; //find address (ensure that it belongs to the current customer) var address = customer.Addresses.FirstOrDefault(a => a.Id == addressId); if (address == null) //address is not found return RedirectToRoute("CustomerAddresses"); //custom address attributes var customAttributes = form.ParseCustomAddressAttributes(_addressAttributeParser, _addressAttributeService); var customAttributeWarnings = _addressAttributeParser.GetAttributeWarnings(customAttributes); foreach (var error in customAttributeWarnings) { ModelState.AddModelError("", error); } if (ModelState.IsValid) { address = model.Address.ToEntity(address); address.CustomAttributes = customAttributes; _addressService.UpdateAddress(address); return RedirectToRoute("CustomerAddresses"); } //If we got this far, something failed, redisplay form model.Address.PrepareModel( address: address, excludeProperties: true, addressSettings: _addressSettings, localizationService: _localizationService, stateProvinceService: _stateProvinceService, addressAttributeService: _addressAttributeService, addressAttributeParser: _addressAttributeParser, loadCountries: () => _countryService.GetAllCountries(_workContext.WorkingLanguage.Id), overrideAttributesXml: customAttributes); return View(model); }
public ActionResult AddressAdd() { if (!_workContext.CurrentCustomer.IsRegistered()) return new HttpUnauthorizedResult(); var model = new CustomerAddressEditModel(); model.Address.PrepareModel( address: null, excludeProperties: false, addressSettings:_addressSettings, localizationService:_localizationService, stateProvinceService: _stateProvinceService, addressAttributeService: _addressAttributeService, addressAttributeParser: _addressAttributeParser, loadCountries: () => _countryService.GetAllCountries(_workContext.WorkingLanguage.Id)); return View(model); }
public ActionResult AddressAdd(CustomerAddressEditModel model, FormCollection form) { if (!_workContext.CurrentCustomer.IsRegistered()) return new HttpUnauthorizedResult(); var customer = _workContext.CurrentCustomer; //custom address attributes var customAttributes = form.ParseCustomAddressAttributes(_addressAttributeParser, _addressAttributeService); var customAttributeWarnings = _addressAttributeParser.GetAttributeWarnings(customAttributes); foreach (var error in customAttributeWarnings) { ModelState.AddModelError("", error); } if (ModelState.IsValid) { var address = model.Address.ToEntity(); address.CustomAttributes = customAttributes; address.CreatedOnUtc = DateTime.UtcNow; //some validation if (address.CountryId == 0) address.CountryId = null; if (address.StateProvinceId == 0) address.StateProvinceId = null; customer.Addresses.Add(address); _customerService.UpdateCustomer(customer); return RedirectToRoute("CustomerAddresses"); } //If we got this far, something failed, redisplay form model.Address.PrepareModel( address: null, excludeProperties: true, addressSettings:_addressSettings, localizationService:_localizationService, stateProvinceService: _stateProvinceService, addressAttributeService: _addressAttributeService, addressAttributeParser: _addressAttributeParser, loadCountries: () => _countryService.GetAllCountries(_workContext.WorkingLanguage.Id), overrideAttributesXml: customAttributes); return View(model); }
public ActionResult AddressEdit(int addressId) { if (!IsCurrentUserRegistered()) return new HttpUnauthorizedResult(); var customer = _workContext.CurrentCustomer; //find address (ensure that it belongs to the current customer) var address = customer.Addresses.FirstOrDefault(a => a.Id == addressId); if (address == null) //address is not found return RedirectToRoute("CustomerAddresses"); var model = new CustomerAddressEditModel(); model.NavigationModel = GetCustomerNavigationModel(customer); model.NavigationModel.SelectedTab = CustomerNavigationEnum.Addresses; model.Address.PrepareModel(address, false, _addressSettings, _localizationService, _stateProvinceService, () => _countryService.GetAllCountries()); return View(model); }
public ActionResult AddressEdit(CustomerAddressEditModel model, int addressId) { if (!IsCurrentUserRegistered()) return new HttpUnauthorizedResult(); var customer = _workContext.CurrentCustomer; //find address (ensure that it belongs to the current customer) var address = customer.Addresses.FirstOrDefault(a => a.Id == addressId); if (address == null) //address is not found return RedirectToRoute("CustomerAddresses"); if (ModelState.IsValid) { address = model.Address.ToEntity(address); _addressService.UpdateAddress(address); return RedirectToRoute("CustomerAddresses"); } //If we got this far, something failed, redisplay form model.NavigationModel = GetCustomerNavigationModel(customer); model.NavigationModel.SelectedTab = CustomerNavigationEnum.Addresses; model.Address.PrepareModel(address, true, _addressSettings, _localizationService, _stateProvinceService, () => _countryService.GetAllCountries()); return View(model); }
public ActionResult AddressAdd(CustomerAddressEditModel model) { if (!IsCurrentUserRegistered()) return new HttpUnauthorizedResult(); var customer = _workContext.CurrentCustomer; if (ModelState.IsValid) { var address = model.Address.ToEntity(); address.CreatedOnUtc = DateTime.UtcNow; //some validation if (address.CountryId == 0) address.CountryId = null; if (address.StateProvinceId == 0) address.StateProvinceId = null; customer.Addresses.Add(address); _customerService.UpdateCustomer(customer); return RedirectToRoute("CustomerAddresses"); } //If we got this far, something failed, redisplay form model.NavigationModel = GetCustomerNavigationModel(customer); model.NavigationModel.SelectedTab = CustomerNavigationEnum.Addresses; model.Address.PrepareModel(null, true, _addressSettings, _localizationService, _stateProvinceService, () => _countryService.GetAllCountries()); return View(model); }
public ActionResult AddressAdd() { if (!IsCurrentUserRegistered()) return new HttpUnauthorizedResult(); var customer = _workContext.CurrentCustomer; var model = new CustomerAddressEditModel(); model.NavigationModel = GetCustomerNavigationModel(customer); model.NavigationModel.SelectedTab = CustomerNavigationEnum.Addresses; model.Address.PrepareModel(null, false, _addressSettings, _localizationService, _stateProvinceService, () => _countryService.GetAllCountries()); return View(model); }
public ActionResult AddressEdit(CustomerAddressEditModel model, int addressId) { if (!IsCurrentUserRegistered()) return new HttpUnauthorizedResult(); var customer = _workContext.CurrentCustomer; model.NavigationModel = GetCustomerNavigationModel(customer); model.NavigationModel.SelectedTab = CustomerNavigationEnum.Addresses; if (ModelState.IsValid) { model.NavigationModel = GetCustomerNavigationModel(customer); model.NavigationModel.SelectedTab = CustomerNavigationEnum.Addresses; //find address (ensure that it belongs to the current customer) var address = customer.Addresses.Where(a => a.Id == addressId).FirstOrDefault(); if (address == null) //address is not found return RedirectToRoute("CustomerAddresses"); address = model.Address.ToEntity(address); _addressService.UpdateAddress(address); return RedirectToRoute("CustomerAddresses"); } //If we got this far, something failed, redisplay form //countries model.Address.AvailableCountries.Add(new SelectListItem() { Text = _localizationService.GetResource("Address.SelectCountry"), Value = "0" }); foreach (var c in _countryService.GetAllCountries()) model.Address.AvailableCountries.Add(new SelectListItem() { Text = c.GetLocalized(x => x.Name), Value = c.Id.ToString(), Selected = (c.Id == model.Address.CountryId) }); //states var states = model.Address.CountryId.HasValue ? _stateProvinceService.GetStateProvincesByCountryId(model.Address.CountryId.Value).ToList() : new List<StateProvince>(); if (states.Count > 0) { foreach (var s in states) model.Address.AvailableStates.Add(new SelectListItem() { Text = s.GetLocalized(x => x.Name), Value = s.Id.ToString(), Selected = (s.Id == model.Address.StateProvinceId) }); } else model.Address.AvailableStates.Add(new SelectListItem() { Text = _localizationService.GetResource("Address.OtherNonUS"), Value = "0" }); return View(model); }
public ActionResult AddressAdd(CustomerAddressEditModel model) { if (!IsCurrentUserRegistered()) return new HttpUnauthorizedResult(); var customer = _workContext.CurrentCustomer; model.NavigationModel = GetCustomerNavigationModel(customer); model.NavigationModel.SelectedTab = CustomerNavigationEnum.Addresses; if (ModelState.IsValid) { var address = model.Address.ToEntity(); address.CreatedOnUtc = DateTime.UtcNow; //some validation if (address.CountryId == 0) address.CountryId = null; if (address.StateProvinceId == 0) address.StateProvinceId = null; customer.Addresses.Add(address); _customerService.UpdateCustomer(customer); return RedirectToRoute("CustomerAddresses"); } //If we got this far, something failed, redisplay form //countries model.Address.AvailableCountries.Add(new SelectListItem() { Text = _localizationService.GetResource("Address.SelectCountry"), Value = "0" }); foreach (var c in _countryService.GetAllCountries()) model.Address.AvailableCountries.Add(new SelectListItem() { Text = c.GetLocalized(x => x.Name), Value = c.Id.ToString(), Selected = (c.Id == model.Address.CountryId) }); //states var states = model.Address.CountryId.HasValue ? _stateProvinceService.GetStateProvincesByCountryId(model.Address.CountryId.Value).ToList() : new List<StateProvince>(); if (states.Count > 0) { foreach (var s in states) model.Address.AvailableStates.Add(new SelectListItem() { Text = s.GetLocalized(x => x.Name), Value = s.Id.ToString(), Selected = (s.Id == model.Address.StateProvinceId) }); } else model.Address.AvailableStates.Add(new SelectListItem() { Text = _localizationService.GetResource("Address.OtherNonUS"), Value = "0" }); return View(model); }
public ActionResult AddressAdd() { if (!IsCurrentUserRegistered()) return new HttpUnauthorizedResult(); var customer = _workContext.CurrentCustomer; var model = new CustomerAddressEditModel(); model.NavigationModel = GetCustomerNavigationModel(customer); model.NavigationModel.SelectedTab = CustomerNavigationEnum.Addresses; model.Address = new AddressModel(); //countries model.Address.AvailableCountries.Add(new SelectListItem() { Text = _localizationService.GetResource("Address.SelectCountry"), Value = "0" }); foreach (var c in _countryService.GetAllCountries()) model.Address.AvailableCountries.Add(new SelectListItem() { Text = c.GetLocalized(x => x.Name), Value = c.Id.ToString() }); model.Address.AvailableStates.Add(new SelectListItem() { Text = _localizationService.GetResource("Address.OtherNonUS"), Value = "0" }); return View(model); }