public void FinaliseModel(UserSessionModel admin, BusinessModel model, bool isEditing) { //user edit/registration uses this drop down model.BusinessTypes = htmlService.DropDownModelBusinessTypes((int?)model.BusinessTypeId); if (model.BusinessTypeId != null) { model.BusinessTypeDescription = Enum.GetName(typeof(BusinessTypeEnum), model.BusinessTypeId); } if (isEditing) { if (model.Address != null) { addressService.FinaliseModel(model.Address); } // Permissions var id = model.BusinessId ?? 0; model.CityAreas = htmlService.CheckBoxListModelBusinessPermissions(admin, id, model.CityAreas, PermissionTypeEnum.CityArea); model.Brands = htmlService.CheckBoxListModelBusinessPermissions(admin, id, model.Brands, PermissionTypeEnum.Brand); model.ProductFamilies = htmlService.CheckBoxListModelBusinessPermissions(admin, id, model.ProductFamilies, PermissionTypeEnum.ProductFamily); model.Tools = htmlService.CheckBoxListModelBusinessPermissions(admin, id, model.Tools, PermissionTypeEnum.Tool); } }
public void FinaliseModel(UserSessionModel admin, UserModel model, bool isEditing = false, bool userTypeChanged = false) { businessService.FinaliseModel(admin, model.Business, isEditing); addressService.FinaliseModel(model.Address); if (!model.IsRegistering) { // Dropdowns model.Businesses = htmlService.DropDownModelBusinesses(admin, model.Business.BusinessId); model.UserTypes = htmlService.DropDownModelUserTypes(admin, model.UserTypeId); // Permissions var id = model.UserId ?? 0; var businessId = (model.Business != null && model.Business.BusinessId.HasValue) ? model.Business.BusinessId.Value : 0; if (!model.Approved.HasValue || !model.Approved.Value) { // Pull from business defaults model.CityAreas = htmlService.CheckBoxListModelBusinessPermissions(admin, businessId, model.CityAreas, PermissionTypeEnum.CityArea); model.Brands = htmlService.CheckBoxListModelBusinessPermissions(admin, businessId, model.Brands, PermissionTypeEnum.Brand); model.ProductFamilies = htmlService.CheckBoxListModelBusinessPermissions(admin, businessId, model.ProductFamilies, PermissionTypeEnum.ProductFamily); model.Tools = htmlService.CheckBoxListModelBusinessPermissions(admin, businessId, model.Tools, PermissionTypeEnum.Tool); } else { model.CityAreas = htmlService.CheckBoxListModelUserPermissions(admin, id, model.CityAreas, PermissionTypeEnum.CityArea, isEditing); model.Brands = htmlService.CheckBoxListModelUserPermissions(admin, id, model.Brands, PermissionTypeEnum.Brand, isEditing); model.ProductFamilies = htmlService.CheckBoxListModelUserPermissions(admin, id, model.ProductFamilies, PermissionTypeEnum.ProductFamily, isEditing); model.Tools = htmlService.CheckBoxListModelUserPermissions(admin, id, model.Tools, PermissionTypeEnum.Tool, isEditing); } if (userTypeChanged || !model.Approved.HasValue || !model.Approved.Value) { model.SystemAccesses = htmlService.CheckBoxListModelUserPermissions(admin, businessId, model.UserTypeId, model.SystemAccesses, PermissionTypeEnum.SystemAccess, isEditing); } else { model.SystemAccesses = htmlService.CheckBoxListModelUserPermissions(admin, id, model.SystemAccesses, PermissionTypeEnum.SystemAccess, isEditing); } } }