IEnumerable <ValidSecurityTask> AvailableTasksFromDb(int userId) { //var today = _clock().Date; var task = new PermissionsGrantedItem { ObjectIntegerKey = -2, CanDelete = false, CanExecute = true, CanInsert = false, CanUpdate = true }; var tasks = new List <PermissionsGrantedItem>(); tasks.Add(task); var result = new List <ValidSecurityTask>(); foreach (var t in tasks) { var tk = new ValidSecurityTask { TaskId = (short)t.ObjectIntegerKey, CanInsert = t.CanInsert, CanUpdate = t.CanUpdate, CanDelete = t.CanDelete, CanExecute = t.CanExecute }; result.Add(tk); } return(result); }
static bool HasAccess(ValidSecurityTask task, ApplicationTaskAccessLevel level) { var hasAccess = true; hasAccess &= (level & ApplicationTaskAccessLevel.Create) != ApplicationTaskAccessLevel.Create || task.CanInsert; hasAccess &= (level & ApplicationTaskAccessLevel.Modify) != ApplicationTaskAccessLevel.Modify || task.CanUpdate; hasAccess &= (level & ApplicationTaskAccessLevel.Delete) != ApplicationTaskAccessLevel.Delete || task.CanDelete; hasAccess &= (level & ApplicationTaskAccessLevel.Execute) != ApplicationTaskAccessLevel.Execute || task.CanExecute; return(hasAccess); }