示例#1
0
        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"));
            }
        }
示例#2
0
        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));
        }