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

📄 roleadmin.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;
using System.Web.UI.WebControls;

using CommunityServer;
using CommunityServer.Components;


namespace CommunityServer.Controls {

	public class RoleAdmin : TemplatedWebControl {

		#region Child Controls

		protected Literal RoleID;
		protected TextBox Name;
		protected TextBox Description;
		protected RoleIcons RoleIcon;

		protected Button Delete;
		protected Button Save;

		#endregion

		#region Skin


		protected override void AttachChildControls() {

			RoleID = (Literal)FindControl( "RoleID" );
			Name = (TextBox)FindControl( "Name" );
			Description = (TextBox)FindControl( "Description" );
			Delete = (Button)FindControl( "Delete" );
			Save = (Button)FindControl( "Save" );
			RoleIcon = FindControl("RoleIcon") as RoleIcons;
			
			InitializeChildControls();
		}

		private void InitializeChildControls() {

			this.Delete.Click += new EventHandler(Delete_Click);
			this.Save.Click += new EventHandler(Save_Click);

		}

		#endregion

		#region Command Handlers

		private void Save_Click(object sender, EventArgs e) {

			Role roleToEdit = Roles.GetRole( new Guid( RoleID.Text ) );
			if ( IsRoleEditable( roleToEdit ) ) {
				SaveRole( roleToEdit );
				Context.Response.Redirect( Globals.GetSiteUrls().AdminManageRoles, true );
			} 
			else 
			{
				throw new CSException(CSExceptionType.RoleOperationUnavailable);
			}

		}

		private void Delete_Click(object sender, EventArgs e) {

			Role role = Roles.GetRole( new Guid( RoleID.Text ) );
			if ( IsRoleEditable( role ) ) {
				DeleteRole( role );
				Context.Response.Redirect( Globals.GetSiteUrls().AdminManageRoles, true );
			} else {
				throw new CSException(CSExceptionType.RoleOperationUnavailable);
			}

		}

		#endregion

		#region Command Implementations

		protected virtual void SaveRole( Role role ) {
			role.Name = Name.Text;
			role.Description = Description.Text;
			Roles.UpdateRole( role );
		}

		protected virtual void DeleteRole( Role role ) {
			Roles.DeleteRole( role );
		}

		#endregion

		protected Boolean IsRoleEditable( Role role ) {
			return !Roles.IsBuiltInRole(role.Name);
		}

		protected override void OnLoad(EventArgs e) {
			if ( !Page.IsPostBack ) {
				this.DataBind();
			}
			base.OnLoad( e );
		}

		public override void DataBind(){
			base.DataBind();

			Delete.Attributes["onclick"] = string.Format("return confirm('{0}');", ResourceManager.GetString("DeleteRole_PopupConfirmation").Replace("'", @"\'") );
			this.Delete.Text = ResourceManager.GetString( "Delete" );
			this.Save.Text = ResourceManager.GetString( "Save" );

			Guid roleID = CSContext.Current.RoleID;
			Role roleToEdit = Roles.GetRole( roleID, false );

			if ( roleToEdit != null ) {
				RoleID.Text = roleToEdit.RoleID.ToString();
				Name.Text = roleToEdit.Name;
				Description.Text = roleToEdit.Description;
				RoleIcon.RoleID = roleToEdit.RoleID.ToString();
			}

			Description.TextMode = TextBoxMode.MultiLine;
			Description.Rows = 5;
			Description.Enabled = IsRoleEditable( roleToEdit );
			Name.Enabled = IsRoleEditable( roleToEdit );
			Save.Enabled = IsRoleEditable( roleToEdit );
			Delete.Enabled = IsRoleEditable( roleToEdit );

		}

	}
}

⌨️ 快捷键说明

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