private bool IsTrue(WorkflowCondition condition, NamedContentData data, ClaimsPrincipal user) { if (condition?.Roles != null) { if (!user.Claims.Any(x => x.Type == ClaimTypes.Role && condition.Roles.Contains(x.Value))) { return(false); } } if (!string.IsNullOrWhiteSpace(condition?.Expression)) { return(scriptEngine.Evaluate("data", data, condition.Expression)); } return(true); }
private bool IsTrue(WorkflowCondition condition, ContentData?data, ClaimsPrincipal?user) { if (condition?.Roles != null && user != null) { if (!user.Claims.Any(x => x.Type == ClaimTypes.Role && condition.Roles.Contains(x.Value))) { return(false); } } if (!string.IsNullOrWhiteSpace(condition?.Expression) && data != null) { var vars = new DataScriptVars { Data = data }; return(scriptEngine.Evaluate(vars, condition.Expression)); } return(true); }