⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 activeusers.cs

📁 本系统是在asp版《在线文件管理器》的基础上设计制作
💻 CS
字号:
//------------------------------------------------------------------------------
// <copyright company="Telligent Systems">
//     Copyright (c) Telligent Systems Corporation.  All rights reserved.
// </copyright> 
//------------------------------------------------------------------------------

using System;
using System.Web;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.Web.UI;
using CommunityServer.Components;

using System.Collections;

namespace CommunityServer.Controls {

    public class ActiveUsers : Label {

        CSContext csContext = CSContext.Current;

        protected override void CreateChildControls() {
            ArrayList list = null;
            Label label = new Label();
            
            Controls.Add(label);

            if (this.GuestMode) {
                int guestCount = 0;
                list = Users.GetGuestsOnline(CSContext.Current.SiteSettings.AnonymousUserOnlineTimeWindow);

                if ((guestCount == 0) && (!csContext.Context.Request.IsAuthenticated))
                    guestCount = 1;


                for (int i = 0; i < list.Count; i++) {

                    SiteUrls.ForumLocation location = SiteUrls.GetForumLocation( ((User) list[i]).LastAction );

                    if (
                        ((location.ForumID == csContext.ForumID) && (location.ForumID > -1)) ||
                        ((location.ForumGroupID == csContext.ForumGroupID) && (location.ForumGroupID > -1)) ||
                        ((location.PostID == csContext.PostID) && (location.PostID > -1))
                        ) {

                        guestCount++;
                    }

                }

                label.Text = string.Format(ResourceManager.GetString("ViewThreads_ActiveGuests"), guestCount);

            } else {
                label.Text = ResourceManager.GetString("ViewThreads_ActiveUsers");
                list = Users.GetUsersOnline(CSContext.Current.SiteSettings.UserOnlineTimeWindow);

            
                for (int i = 0; i < list.Count; i++) {

                    SiteUrls.ForumLocation location = SiteUrls.GetForumLocation( ((User) list[i]).LastAction );

                    if (
                        ((location.ForumID == csContext.ForumID) && (location.ForumID > -1)) ||
                        ((location.ForumGroupID == csContext.ForumGroupID) && (location.ForumGroupID > -1)) ||
                        ((location.PostID == csContext.PostID) && (location.PostID > -1)) ||
                        ( ((User) list[i]).UserID == CSContext.Current.UserID)
                        ) {

                        HtmlAnchor anchor = new HtmlAnchor();
                        anchor.InnerText = ((User) list[i]).Username;
                        anchor.HRef = Globals.GetSiteUrls().UserProfile( ((User) list[i]).UserID );

                        Controls.Add(anchor);

                        Controls.Add(new LiteralControl(", "));
                    }

                }

                // Remove the last comma
                Controls.RemoveAt( Controls.Count - 1 );

            }

        }


		[
		System.ComponentModel.DefaultValue( false ),
		]
		public virtual Boolean GuestMode {
			get {
				Object state = ViewState["GuestMode"];
				if ( state != null ) {
					return (Boolean)state;
				}
				return false;
			}
			set {
				ViewState["GuestMode"] = value;
			}
		}

	}
}


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -