public static PermissionDictionary WithHiddenNavigationItemPermissions(this IPermissionDictionary permissionDictionary) { if (SecuritySystem.CurrentUser != null) { var permissions = ((ISecurityUserWithRoles)SecuritySystem.CurrentUser).Roles.OfType <ISupportHiddenNavigationItems>().SelectMany(role => role.GetHiddenNavigationItemPermissions()); return(new PermissionDictionary(permissionDictionary.GetPermissions <IOperationPermission>().Concat(permissions))); } return(new PermissionDictionary(permissionDictionary.GetPermissions <IOperationPermission>())); }
public static PermissionDictionary WithSecurityOperationAttributePermissions(this IPermissionDictionary permissionDictionary) { if (SecuritySystem.CurrentUser != null) { var permissions = ((ISecurityUserWithRoles)SecuritySystem.CurrentUser).Roles.OfType <IXpandRoleCustomPermissions>().SelectMany(role => role.SecurityOperationAttributePermissions()); return(new PermissionDictionary(permissionDictionary.GetPermissions <IOperationPermission>().Concat(permissions))); } return(new PermissionDictionary(permissionDictionary.GetPermissions <IOperationPermission>())); }
public override bool IsGranted(NavigationItemPermissionRequest permissionRequest) { foreach (NavigationItemPermission permission in permissions.GetPermissions <NavigationItemPermission>()) { if (permission.HiddenNavigationItem == permissionRequest.NavigationItem) { return(false); } } return(true); }
public override bool IsGranted(StateMachineTransitionOperationRequest permissionRequest) { var permissions = _permissions.GetPermissions <StateMachineTransitionPermission>(); var stateMachineTransitionPermissions = permissions.Where(permission => TransitionMatch(permission, permissionRequest)); if (!stateMachineTransitionPermissions.Any()) { return(true); } return(stateMachineTransitionPermissions.Any(permission => permission.Hide == permissionRequest.Hide)); }
public override bool IsGranted(ExecuteActionPermissionRequest permissionRequest) { foreach (IOperationPermission permission in Permissions.GetPermissions <IOperationPermission>()) { if (permission.Operation == permissionRequest.ActionId) { return(true); } } return(false); }
public override bool IsGranted(NavigationItemPermissionRequest permissionRequest) { return(_permissions.GetPermissions <NavigationItemPermission>().All(permission => permission.HiddenNavigationItem != permissionRequest.NavigationItem)); }