public ActionResult Create() { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCustomerRoles)) return AccessDeniedView(); var model = new CustomerRoleModel(); //default values model.Active = true; return View(model); }
public ActionResult Create(CustomerRoleModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCustomerRoles)) return AccessDeniedView(); if (ModelState.IsValid) { var customerRole = model.ToEntity(); _customerService.InsertCustomerRole(customerRole); //activity log _customerActivityService.InsertActivity("AddNewCustomerRole", _localizationService.GetResource("ActivityLog.AddNewCustomerRole"), customerRole.Name); SuccessNotification(_localizationService.GetResource("Admin.Customers.CustomerRoles.Added")); return continueEditing ? RedirectToAction("Edit", new { id = customerRole.Id }) : RedirectToAction("List"); } //If we got this far, something failed, redisplay form return View(model); }
public ActionResult Edit(CustomerRoleModel model, bool continueEditing) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCustomers)) return AccessDeniedView(); var customerRole = _customerService.GetCustomerRoleById(model.Id); if (customerRole == null) //No customer role found with the specified id return RedirectToAction("List"); try { if (ModelState.IsValid) { if (customerRole.IsSystemRole && !model.Active) throw new NopException(_localizationService.GetResource("Admin.Customers.CustomerRoles.Fields.Active.CantEditSystem")); if (customerRole.IsSystemRole && !customerRole.SystemName.Equals(model.SystemName, StringComparison.InvariantCultureIgnoreCase)) throw new NopException(_localizationService.GetResource("Admin.Customers.CustomerRoles.Fields.SystemName.CantEditSystem")); if (SystemCustomerRoleNames.Registered.Equals(customerRole.SystemName, StringComparison.InvariantCultureIgnoreCase) && model.PurchasedWithProductId > 0) throw new NopException(_localizationService.GetResource("Admin.Customers.CustomerRoles.Fields.PurchasedWithProduct.Registered")); customerRole = model.ToEntity(customerRole); _customerService.UpdateCustomerRole(customerRole); //activity log _customerActivityService.InsertActivity("EditCustomerRole", _localizationService.GetResource("ActivityLog.EditCustomerRole"), customerRole.Name); SuccessNotification(_localizationService.GetResource("Admin.Customers.CustomerRoles.Updated")); return continueEditing ? RedirectToAction("Edit", customerRole.Id) : RedirectToAction("List"); } //If we got this far, something failed, redisplay form return View(model); } catch (Exception exc) { ErrorNotification(exc); return RedirectToAction("Edit", new { id = customerRole.Id }); } }
public ActionResult AssociateProductToCustomerRolePopupList(DataSourceRequest command, CustomerRoleModel.AssociateProductToCustomerRoleModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCustomers)) return AccessDeniedView(); //a vendor should have access only to his products if (_workContext.CurrentVendor != null) { model.SearchVendorId = _workContext.CurrentVendor.Id; } var products = _productService.SearchProducts( categoryIds: new List<int>() { model.SearchCategoryId }, manufacturerId: model.SearchManufacturerId, storeId: model.SearchStoreId, vendorId: model.SearchVendorId, productType: model.SearchProductTypeId > 0 ? (ProductType?)model.SearchProductTypeId : null, keywords: model.SearchProductName, pageIndex: command.Page - 1, pageSize: command.PageSize, showHidden: true ); var gridModel = new DataSourceResult(); gridModel.Data = products.Select(x => x.ToModel()); gridModel.Total = products.TotalCount; return Json(gridModel); }
public ActionResult AssociateProductToCustomerRolePopup(string btnId, string productIdInput, string productNameInput, CustomerRoleModel.AssociateProductToCustomerRoleModel model) { if (!_permissionService.Authorize(StandardPermissionProvider.ManageCustomers)) return AccessDeniedView(); var associatedProduct = _productService.GetProductById(model.AssociatedToProductId); if (associatedProduct == null) return Content("Cannot load a product"); //a vendor should have access only to his products if (_workContext.CurrentVendor != null && associatedProduct.VendorId != _workContext.CurrentVendor.Id) return Content("This is not your product"); //a vendor should have access only to his products model.IsLoggedInAsVendor = _workContext.CurrentVendor != null; ViewBag.RefreshPage = true; ViewBag.productIdInput = productIdInput; ViewBag.productNameInput = productNameInput; ViewBag.btnId = btnId; ViewBag.productId = associatedProduct.Id; ViewBag.productName = associatedProduct.Name; return View(model); }
protected virtual void UpdateAttributeLocales(CustomerRole specificationAttribute, CustomerRoleModel model) { foreach (var localized in model.Locales) { _localizedEntityService.SaveLocalizedValue(specificationAttribute, x => x.Description, localized.Description, localized.LanguageId); } }