/// <summary> /// Создает permisions ордновременно для множества контентов /// </summary> /// <param name="contentIDs"></param> /// <param name="userId"></param> /// <param name="groupId"></param> /// <param name="permissionLevel"></param> internal static void MultipleSetPermission(List <int> contentIDs, int?userId, int?groupId, int permissionLevel) { var permissionlevelId = CommonPermissionRepository.GetPermissionLevels().Single(l => l.Level == permissionLevel).Id; using (var scope = new QPConnectionScope()) { Common.RemoveChildContentPermissions(scope.DbConnection, contentIDs, userId, groupId); Common.InsertChildContentPermissions(scope.DbConnection, contentIDs, userId, groupId, permissionlevelId, false, QPContext.CurrentUserId, false); } }
public void Init(IPermissionRepository repository) { Repository = repository; if (IsNew && !UserId.HasValue && !GroupId.HasValue) { MemberType = GroupMemberType; PermissionLevelId = CommonPermissionRepository.GetPermissionLevels().Single(l => l.Level == Constants.PermissionLevel.Read).Id; } else { if (UserId.HasValue) { MemberType = UserMemberType; } else if (GroupId.HasValue) { MemberType = GroupMemberType; } } }
public IEnumerable <EntityPermissionLevel> GetPermissionLevels() => CommonPermissionRepository.GetPermissionLevels();