public ActionResult RegistrationDataEdit(ShopRegistrationDataViewModel model) { var shop = _shopService.GetShop(model.Shop.ID); if (WebSecurity.CurrentUserId == shop.UserID || User.IsInRole("Administrator") || User.IsInRole("Moderator")) { if (ModelState.IsValid) { try { shop.Phone = model.Shop.Phone; shop.CityID = model.Shop.CityID; shop.Requisites = HtmlUtils.RemoveUnwantedTags(model.Shop.Requisites); if (User.IsInRole("Administrator") || User.IsInRole("Moderator")) { shop.Title = model.Shop.Title; shop.CompanyName = model.Shop.CompanyName; } _shopService.Save(); return(RedirectToAction("RegistrationData", "Shops", new { id = shop.ID })); } catch { TempData["error"] = ProjectConfiguration.Get.DataErrorMessage; return(View(model)); } } TempData["error"] = ProjectConfiguration.Get.DataErrorMessage; return(View(model)); } else { return(RedirectToRoute("RestrictedAccess")); } }
public ActionResult RegistrationDataEdit(int id) { var shop = _shopService.GetShop(id); if (shop == null || (WebSecurity.CurrentUserId != shop.UserID && !User.IsInRole("Administrator") && !User.IsInRole("Moderator"))) { return(HttpNotFound()); } if (WebSecurity.CurrentUserId == shop.UserID && shop.IsActive == false && !User.IsInRole("Administrator") && !User.IsInRole("Moderator")) { TempData["error"] = "Магазин еще не активирован!"; return(Redirect("/")); } var result = new ShopRegistrationDataViewModel(); var categories = shop.ShopProduct.Select(q => q.Product.Category).Distinct().ToList(); if (categories.Any()) { result.MonthlyFee = categories.Sum(x => x.Price); } result.Shop = shop; result.ChangeRegistrationDataHelp = _configRepository.ReadByName("ChangeRegistrationDataHelp").Value; return(View(result)); }