public ActionResult CityEditPopup(int id) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageProducts)) return AccessDeniedView(); var sp = _productCitiesService.GetProductsCitiesById(id); var city = _cityService.GetCityById(sp.CityID); var state = _stateProvinceService.GetStateProvinceById(city.StateID); if (sp == null) //No state found with the specified id throw new ArgumentException("No product found with the specified id"); var model = new ProductModel.CityModel(); model.ProductId = sp.ProductID; //default value model.Countries.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Address.SelectCountry"), Value = "0" }); foreach (var c in _countryService.GetAllCountries(false)) model.Countries.Add(new SelectListItem { Text = c.Name, Value = c.Id.ToString(), Selected = (c.Id == state.CountryId) }); model.CountryId = state.CountryId; model.States.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Address.SelectState"), Value = "0" }); foreach (var c in _stateProvinceService.GetStateProvincesByCountryId(model.CountryId)) model.States.Add(new SelectListItem { Text = c.Name, Value = c.Id.ToString(), Selected = (c.Id == city.StateID) }); model.StateId = city.StateID; model.Cities.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Address.SelectCity"), Value = "0" }); foreach (var c in _cityService.GetCityByStateProvincesId(model.StateId)) model.Cities.Add(new SelectListItem { Text = c.CityName, Value = c.CityID.ToString(), Selected = (c.CityID == city.CityID) }); model.CityId = city.CityID; //locales //AddLocales(_languageService, model.Locales, (locale, languageId) => //{ // locale.Name = sp.GetLocalized(x => x.Name, languageId, false, false); //}); return View(model); }
public ActionResult CityList(DataSourceRequest command, int productId) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageProducts)) return AccessDeniedView(); var product = _productService.GetProductById(productId); if (product == null) throw new ArgumentException("No product found with the specified id"); //a vendor should have access only to his products if (_workContext.CurrentVendor != null && product.VendorId != _workContext.CurrentVendor.Id) return Content("This is not your product"); var Cities = _productCitiesService.GetProductsCitiesByProductId(productId); List<ProductModel.CityModel> citymodel = new List<ProductModel.CityModel>(); foreach (var c in Cities) { if (c != null) { ProductModel.CityModel city = new ProductModel.CityModel(); string countryName; var state = new StateProvince(); var country = new Country(); var cty = new City(); if (c.CityID > 0) { cty = _cityService.GetCityById(c.CityID); state = _stateProvinceService.GetStateProvinceById(cty.StateID); country = _countryService.GetCountryById(state.Id); countryName = country != null ? country.Name : "Deleted"; } else { countryName = _localizationService.GetResource("Admin.Catalog.Products.City.Fields.Country.All"); } city.Id = c.Id; city.CityId = c.CityID; city.City = cty.CityName; city.CountryId = country != null ? country.Id : 0; city.Country = country != null ? country.Name : "Deleted"; city.StateId = state != null ? state.Id : 0; city.State = state != null ? state.Name : "Deleted"; city.ProductId = c.ProductID; citymodel.Add(city); } } var gridModel = new DataSourceResult { Data = citymodel, Total = citymodel.Count }; return Json(gridModel); }
public ActionResult CityCreatePopup(int productId) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCountries)) return AccessDeniedView(); var model = new ProductModel.CityModel(); model.ProductId = productId; //default value model.Countries.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Address.SelectCountry"), Value = "0" }); foreach (var c in _countryService.GetAllCountries(false)) model.Countries.Add(new SelectListItem { Text = c.Name, Value = c.Id.ToString(), Selected = (c.Id == 0) }); model.CountryId = 0; model.States.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Address.SelectState"), Value = "0" }); foreach (var c in _stateProvinceService.GetStateProvincesByCountryId(model.CountryId)) model.States.Add(new SelectListItem { Text = c.Name, Value = c.Id.ToString(), Selected = (c.Id == 0) }); model.StateId = 0; model.Cities.Add(new SelectListItem { Text = _localizationService.GetResource("Admin.Address.SelectCity"), Value = "0" }); foreach (var c in _cityService.GetCityByStateProvincesId(model.StateId)) model.Cities.Add(new SelectListItem { Text = c.CityName, Value = c.CityID.ToString(), Selected = (c.CityID == 0) }); model.CityId = 0; //locales return View(model); }