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); NotifySuccess(_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.ManageCustomerRoles)) 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 SmartException(_localizationService.GetResource("Admin.Customers.CustomerRoles.Fields.Active.CantEditSystem")); if (customerRole.IsSystemRole && !customerRole.SystemName.Equals(model.SystemName, StringComparison.InvariantCultureIgnoreCase)) throw new SmartException(_localizationService.GetResource("Admin.Customers.CustomerRoles.Fields.SystemName.CantEditSystem")); customerRole = model.ToEntity(customerRole); _customerService.UpdateCustomerRole(customerRole); //activity log _customerActivityService.InsertActivity("EditCustomerRole", _localizationService.GetResource("ActivityLog.EditCustomerRole"), customerRole.Name); NotifySuccess(_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) { NotifyError(exc); return RedirectToAction("Edit", new { id = customerRole.Id }); } }