コード例 #1
0
        /// <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);
            }
        }
コード例 #2
0
 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;
         }
     }
 }
コード例 #3
0
 public IEnumerable <EntityPermissionLevel> GetPermissionLevels() => CommonPermissionRepository.GetPermissionLevels();