Exemplo n.º 1
0
        /// <summary>
        /// 取得某版块所有被屏蔽的用户信息
        /// </summary>
        /// <returns></returns>
        public static BannedUserCollection GetBannedInfos(int forumID, int pageSize, int pageNumber, out int rowCount)
        {
            BannedUserCollection result;

            rowCount = 0;
            if (ForumBannedUsers.ContainsKey(forumID))
            {
                result   = ForumBannedUsers[forumID].Limited;
                rowCount = result.Count;
                BannedUserCollection pagedUsers = new BannedUserCollection();
                int index = 0;
                for (int i = 0; i < pageSize; i++)
                {
                    index = i + (pageNumber - 1) * pageSize;

                    if (index >= result.Count)
                    {
                        break;
                    }
                    pagedUsers.Add(result[index]);
                }

                return(pagedUsers);
            }
            else
            {
                return(new BannedUserCollection());
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// 清除屏蔽用户的缓存
        /// </summary>
        internal void ClearBannedUserCache()
        {
            s_AllBannedUsers = null;
            ForumCollection forums = ForumBO.Instance.GetAllForums();

            foreach (Forum forum in forums)
            {
                forum.ClearBannedUserCache();
            }
        }
Exemplo n.º 3
0
        /// <summary>
        /// 获得所有版块的所有屏蔽用户,包含尚未生效的和已经过期的
        /// </summary>
        /// <returns></returns>
        public BannedUserCollection GetAllBannedUsers()
        {
            BannedUserCollection result = s_AllBannedUsers;

            if (result == null)
            {
                result           = BannedUserDao.Instance.GetAllBannedUsers();
                s_AllBannedUsers = result;
            }

            return(result);
        }
Exemplo n.º 4
0
        /// <summary>
        /// 取得某用户的所有被屏蔽的版块信息
        /// </summary>
        /// <param name="userID"></param>
        /// <returns></returns>
        public static BannedUserCollection GetUserBannedForumInfo(int userID)
        {
            BannedUserCollection banned = new BannedUserCollection();

            if (UserBannedForums.ContainsKey(userID))
            {
                List <int> bannedForumids = UserBannedForums[userID];
                foreach (int id in bannedForumids)
                {
                    long       key = GetKey(userID, id);
                    BannedUser b   = AllBannedUsers.GetValue(key);
                    if (b != null)
                    {
                        banned.Add(b);
                    }
                }
            }
            return(banned);
        }
Exemplo n.º 5
0
        /// <summary>
        /// 取得某版块所有被屏蔽的用户信息
        /// </summary>
        /// <returns></returns>
        public static BannedUserCollection GetBannedInfos(int forumID, int pageSize, int pageNumber, out int rowCount)
        {
            BannedUserCollection result;
            rowCount = 0;
            if (ForumBannedUsers.ContainsKey(forumID))
            {
                result = ForumBannedUsers[forumID].Limited;
                rowCount = result.Count;
                BannedUserCollection pagedUsers = new BannedUserCollection();
                int index = 0;
                for (int i = 0; i < pageSize; i++)
                {
                    index = i + (pageNumber - 1) * pageSize;

                    if (index >= result.Count)
                        break;
                    pagedUsers.Add(result[index]);
                }

                return pagedUsers;
            }
            else
            {
                return new BannedUserCollection();
            }
        }
Exemplo n.º 6
0
 /// <summary>
 /// 取得某用户的所有被屏蔽的版块信息
 /// </summary>
 /// <param name="userID"></param>
 /// <returns></returns>
 public static BannedUserCollection GetUserBannedForumInfo(int userID)
 {
     BannedUserCollection banned = new BannedUserCollection();
     if (UserBannedForums.ContainsKey(userID))
     {
         List<int> bannedForumids = UserBannedForums[userID];
         foreach (int id in bannedForumids)
         {
             long key = GetKey(userID, id);
             BannedUser b = AllBannedUsers.GetValue(key);
             if (b != null)
                 banned.Add(b);
         }
     }
     return banned;
 }
Exemplo n.º 7
0
 public static void ClearInnerTable()
 {
     UserBannedForums = null;
     ForumBannedUsers = null;
     AllBannedUsers = null;
 }
Exemplo n.º 8
0
 public static void ClearInnerTable()
 {
     UserBannedForums = null;
     ForumBannedUsers = null;
     AllBannedUsers   = null;
 }