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

📄 userimagebuttons.cs

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

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


namespace CommunityServer.Controls {

    public class UserImageButtons : PlaceHolder {

        #region Member variables
        CSContext csContext = CSContext.Current;
        
        #endregion

        #region Render logic
        protected override void Render(HtmlTextWriter writer) {

            switch ( this.Mode ) {

                case (UserImageButtonMode.Email):
//                    Email(writer, false);
                    break;

                case (UserImageButtonMode.HomePage):
                    HomePage(writer, false);
                    break;

                case (UserImageButtonMode.PrivateMessages):
                    PrivateMessage(writer, false);
                    break;

                case (UserImageButtonMode.WebLog):
                    WebLog(writer, false);
                    break;

                case (UserImageButtonMode.Search):
                    Search(writer, false);
                    break;

                default: // All
//                    Email(writer, true);
                    PrivateMessage(writer, true);
                    HomePage(writer, true);
                    WebLog(writer, true);
                    Search(writer, true);

                    break;

            }
            // User's profile
            //
            //            l.ImageUrl = Globals.GetSkinPath() + "/images/post_button_profile.gif";
            //            l.NavigateUrl = Globals.GetSiteUrls().UserProfile(user.UserID);
            //            l.RenderControl(writer);

            // User's IM
            //
/* Currently disabled
            if (!user.IsAnonymous) {
                writer.Write(" ");
                l.ImageUrl = Globals.GetSkinPath() + "/images/post_button_buddy.gif";
                l.NavigateUrl = "TODO";
                l.RenderControl(writer);

                // User's stats
                //
                writer.Write(" ");
                l.ImageUrl = Globals.GetSkinPath() + "/images/post_button_stats.gif";
                l.NavigateUrl = "TODO";
                l.RenderControl(writer);
            }
*/
        }

        // User's email
        //
        void Email(HtmlTextWriter writer, bool whitespace) {
			if  ( !User.IsAnonymous && CSContext.Current.SiteSettings.EnableEmail) 
			{

				HyperLink l = new HyperLink();

				if (whitespace)
					writer.Write(" ");

				l.ImageUrl = Globals.GetSkinPath() + "/images/post_button_email.gif";
				l.NavigateUrl = Globals.GetSiteUrls().EmailToUser(User.UserID);
				l.ToolTip = string.Format(ResourceManager.GetString("UserImageButtons_Email"), this.User.Username);
				l.RenderControl(writer);
			}
        }

        // User's Private Messages
        //
        void PrivateMessage(HtmlTextWriter writer, bool whitespace) {
			if  ((!User.IsAnonymous) && (csContext.User.UserID != User.UserID))
			{
				HyperLink l = new HyperLink();
                
				if (whitespace)
					writer.Write(" ");

				l.ImageUrl = Globals.GetSkinPath() + "/images/post_button_pm.gif";
				l.NavigateUrl = Globals.GetSiteUrls().PrivateMessage(User.UserID);
				l.ToolTip = string.Format(ResourceManager.GetString("UserImageButtons_PrivateMessage"), User.Username);
				l.RenderControl(writer);
			}
        }

        // User's home page
        //
        void HomePage(HtmlTextWriter writer, bool whitespace) {
            if ((User.Profile.WebAddress != String.Empty) && (!User.IsAnonymous)) {
                HyperLink l = new HyperLink();
                
                if (whitespace)
                    writer.Write(" ");
                
                l.Target = "_new";
                l.ImageUrl = Globals.GetSkinPath() + "/images/post_button_www.gif";
                l.NavigateUrl = User.Profile.WebAddress;
                l.ToolTip = string.Format(ResourceManager.GetString("UserImageButtons_HomePage"), User.Username);
                l.RenderControl(writer);
            }
        }

        // User's web log
        //
        void WebLog (HtmlTextWriter writer, bool whitespace) {
            if ((User.Profile.WebLog != String.Empty) && (!User.IsAnonymous)) {
                HyperLink l = new HyperLink();
                
                if (whitespace)
                    writer.Write(" ");
                
                l.Target = "_new";
                l.ImageUrl = Globals.GetSkinPath() + "/images/post_button_weblog.gif";
                l.NavigateUrl = User.Profile.WebLog;
                l.ToolTip = string.Format(ResourceManager.GetString("UserImageButtons_WebLog"), User.Username);
                l.RenderControl(writer);
            }
        }

        // Search
        //
        void Search (HtmlTextWriter writer, bool whitespace) {
            if ((User.TotalPosts > 0) && (!User.IsAnonymous)) {
                HyperLink l = new HyperLink();
                
                if (whitespace)
                    writer.Write(" ");
                
                l.ImageUrl = Globals.GetSkinPath() + "/images/post_button_search.gif";
                l.NavigateUrl = Globals.GetSiteUrls().SearchByUser( User.UserID);
                l.ToolTip = string.Format(ResourceManager.GetString("UserImageButtons_SearchFor"), User.Username);
                l.RenderControl(writer);
            }

        }

        #endregion

        #region Public properties
		public User User {
			get {
				if ( _user == null ) {
					Object state = ViewState[ "UserID" ];
					if ( state != null ) {
						Int32 userID = (Int32)state;
						_user = Users.GetUser( userID, false );
					}
				}
				return _user;
			}
			set {
				_user = value;
				if ( _user != null ) {
					ViewState[ "UserID" ] = _user.UserID;
				} else {
					ViewState.Remove( "UserID" );
				}
			}
		}
		User _user;

		[
		DefaultValue( UserImageButtonMode.All ),
		]
		public virtual UserImageButtonMode Mode {
			get {
				Object state = ViewState["Mode"];
				if ( state != null ) {
					return (UserImageButtonMode)state;
				}
				return UserImageButtonMode.All;
			}
			set {
				ViewState["Mode"] = value;
			}
		}

        #endregion

    }

}

⌨️ 快捷键说明

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