📄 nodepermissions.cs
字号:
namespace PowerEasy.WebSite.Admin.User
{
using PowerEasy.AccessManage;
using PowerEasy.Common;
using PowerEasy.Contents;
using PowerEasy.Controls;
using PowerEasy.Enumerations;
using PowerEasy.Model.Contents;
using PowerEasy.Web.UI;
using System;
using System.Collections.Generic;
using System.Text;
using System.Web.UI.WebControls;
public class NodePermissions : AdminPage
{
protected Button BtnSubmit;
protected ExtendedGridView EgvNodes;
private CheckBox m_ChildNodeManage;
private bool m_ChildNodeManageAll;
private string m_ChildNodeManageId;
private CheckBox m_ChkContentManage;
private CheckBox m_ChkCurrentNodesManage;
private CheckBox m_ChkNodeCheck;
private CheckBox m_ChkNodeCommentCheck;
private bool m_ChkNodeCommentCheckAll;
private string m_ChkNodeCommentCheckId;
private CheckBox m_ChkNodeCommentManage;
private bool m_ChkNodeCommentManageAll;
private string m_ChkNodeCommentManageId;
private CheckBox m_ChkNodeCommentReply;
private bool m_ChkNodeCommentReplyAll;
private string m_ChkNodeCommentReplyId;
private CheckBox m_ChkNodeInput;
private CheckBox m_ChkNodePreview;
private CheckBox m_ChkNodeSkim;
private bool m_ContentManageAll;
private string m_ContentManageId;
private bool m_CurrentNodesManageAll;
private string m_CurrentNodesManageId;
private int m_IdType;
private bool m_NodeCheckAll;
private string m_NodeCheckId;
private bool m_NodeInputAll;
private string m_NodeInputId;
private bool m_NodePreviewAll;
private string m_NodePreviewId;
private bool m_NodeSkimAll;
private string m_NodeSkimId;
private string m_PermissionsType = "";
private int m_RoleId;
private string m_Type = "";
protected ObjectDataSource OdsEgvNodes;
private static void AppendAllId(StringBuilder roleIdList, int countNum)
{
if (roleIdList.Length > 0)
{
string str = roleIdList.ToString();
if ((str.IndexOf(",") > 0) && (str.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries).Length == countNum))
{
StringHelper.AppendString(roleIdList, "-1");
}
}
}
private static void AppendSelectId(bool isChecked, string selectId, ref StringBuilder roleIdList)
{
if (isChecked)
{
StringHelper.AppendString(roleIdList, selectId);
}
}
protected void BtnSubmit_Click(object sender, EventArgs e)
{
string permissionsType = this.m_PermissionsType;
if (permissionsType != null)
{
if (!(permissionsType == "Role"))
{
if (permissionsType == "User")
{
this.SaveUserFieldPermissions();
}
}
else
{
this.SaveRoleFieldPermissions();
}
}
this.Page.ClientScript.RegisterClientScriptBlock(base.GetType(), "windowsclose", "<script type='text/javascript'>window.close();</script>");
}
protected void EgvNodes_RowDataBound(object sender, GridViewRowEventArgs e)
{
NodeInfo nodeInfo = new NodeInfo();
nodeInfo = (NodeInfo) e.Row.DataItem;
if (e.Row.RowType == DataControlRowType.DataRow)
{
Label label = (Label) e.Row.FindControl("LabNodeShowTree");
label.Text = Nodes.GetTreeLine(nodeInfo.Depth, nodeInfo.ParentPath, nodeInfo.NextId, nodeInfo.Child) + nodeInfo.NodeName + Nodes.GetNodeDir(nodeInfo.Child, nodeInfo.NodeType, nodeInfo.NodeDir);
string permissionsType = this.m_PermissionsType;
if (permissionsType != null)
{
if (!(permissionsType == "Role"))
{
if (permissionsType == "User")
{
this.UserNodeContentSelectPermission(e, nodeInfo);
}
}
else
{
string type = this.m_Type;
if (type != null)
{
if (!(type == "Content"))
{
if (!(type == "Comment"))
{
if (type == "Node")
{
this.NodeSelectPermission(e, nodeInfo);
}
return;
}
}
else
{
this.NodeContentSelectPermission(e, nodeInfo);
return;
}
this.NodeCommentSelectPermission(e, nodeInfo);
}
}
}
}
}
private void GetContentNodeSelectPermission()
{
string selectId = "";
StringBuilder roleIdList = new StringBuilder();
StringBuilder builder2 = new StringBuilder();
StringBuilder builder3 = new StringBuilder();
StringBuilder builder4 = new StringBuilder();
this.m_NodePreviewAll = ((CheckBox) this.EgvNodes.Rows[0].FindControl("ChkNodePreview")).Checked;
this.m_NodeInputAll = ((CheckBox) this.EgvNodes.Rows[0].FindControl("ChkNodeInput")).Checked;
this.m_NodeCheckAll = ((CheckBox) this.EgvNodes.Rows[0].FindControl("ChkNodeCheck")).Checked;
this.m_ContentManageAll = ((CheckBox) this.EgvNodes.Rows[0].FindControl("ChkContentManage")).Checked;
for (int i = 0; i < this.EgvNodes.Rows.Count; i++)
{
this.m_ChkNodePreview = (CheckBox) this.EgvNodes.Rows[i].Cells[2].FindControl("ChkNodePreview");
this.m_ChkNodeInput = (CheckBox) this.EgvNodes.Rows[i].Cells[3].FindControl("ChkNodeInput");
this.m_ChkNodeCheck = (CheckBox) this.EgvNodes.Rows[i].Cells[4].FindControl("ChkNodeCheck");
this.m_ChkContentManage = (CheckBox) this.EgvNodes.Rows[i].Cells[5].FindControl("ChkContentManage");
selectId = this.EgvNodes.DataKeys[i].Value.ToString();
AppendSelectId(this.m_ChkNodePreview.Checked || this.m_NodePreviewAll, selectId, ref roleIdList);
AppendSelectId(this.m_ChkNodeInput.Checked || this.m_NodeInputAll, selectId, ref builder2);
AppendSelectId(this.m_ChkNodeCheck.Checked || this.m_NodeCheckAll, selectId, ref builder3);
AppendSelectId(this.m_ChkContentManage.Checked || this.m_ContentManageAll, selectId, ref builder4);
}
AppendAllId(roleIdList, this.EgvNodes.Rows.Count - 1);
AppendAllId(builder2, this.EgvNodes.Rows.Count - 1);
AppendAllId(builder3, this.EgvNodes.Rows.Count - 1);
AppendAllId(builder4, this.EgvNodes.Rows.Count - 1);
RolePermissions.DeleteNodePermissionFromRoles(this.m_RoleId, -2, OperateCode.NodeContentPreview);
RolePermissions.DeleteNodePermissionFromRoles(this.m_RoleId, -2, OperateCode.NodeContentInput);
RolePermissions.DeleteNodePermissionFromRoles(this.m_RoleId, -2, OperateCode.NodeContentCheck);
RolePermissions.DeleteNodePermissionFromRoles(this.m_RoleId, -2, OperateCode.NodeContentManage);
RolePermissions.AddNodePermissionToRoles(this.m_RoleId, OperateCode.NodeContentPreview, roleIdList.ToString());
RolePermissions.AddNodePermissionToRoles(this.m_RoleId, OperateCode.NodeContentInput, builder2.ToString());
RolePermissions.AddNodePermissionToRoles(this.m_RoleId, OperateCode.NodeContentCheck, builder3.ToString());
RolePermissions.AddNodePermissionToRoles(this.m_RoleId, OperateCode.NodeContentManage, builder4.ToString());
}
private void GetNodeCommentSelectPermission()
{
string selectId = "";
StringBuilder roleIdList = new StringBuilder();
StringBuilder builder2 = new StringBuilder();
StringBuilder builder3 = new StringBuilder();
this.m_ChkNodeCommentReplyAll = ((CheckBox) this.EgvNodes.Rows[0].FindControl("ChkNodeCommentReply")).Checked;
this.m_ChkNodeCommentCheckAll = ((CheckBox) this.EgvNodes.Rows[0].FindControl("ChkNodeCommentCheck")).Checked;
this.m_ChkNodeCommentManageAll = ((CheckBox) this.EgvNodes.Rows[0].FindControl("ChkNodeCommentManage")).Checked;
for (int i = 0; i < this.EgvNodes.Rows.Count; i++)
{
this.m_ChkNodeCommentReply = (CheckBox) this.EgvNodes.Rows[i].Cells[2].FindControl("ChkNodeCommentReply");
this.m_ChkNodeCommentCheck = (CheckBox) this.EgvNodes.Rows[i].Cells[3].FindControl("ChkNodeCommentCheck");
this.m_ChkNodeCommentManage = (CheckBox) this.EgvNodes.Rows[i].Cells[4].FindControl("ChkNodeCommentManage");
selectId = this.EgvNodes.DataKeys[i].Value.ToString();
AppendSelectId(this.m_ChkNodeCommentReply.Checked || this.m_ChkNodeCommentReplyAll, selectId, ref roleIdList);
AppendSelectId(this.m_ChkNodeCommentCheck.Checked || this.m_ChkNodeCommentCheckAll, selectId, ref builder2);
AppendSelectId(this.m_ChkNodeCommentManage.Checked || this.m_ChkNodeCommentManageAll, selectId, ref builder3);
}
AppendAllId(roleIdList, this.EgvNodes.Rows.Count - 1);
AppendAllId(builder2, this.EgvNodes.Rows.Count - 1);
AppendAllId(builder3, this.EgvNodes.Rows.Count - 1);
RolePermissions.DeleteNodePermissionFromRoles(this.m_RoleId, -2, OperateCode.NodeCommentReply);
RolePermissions.DeleteNodePermissionFromRoles(this.m_RoleId, -2, OperateCode.NodeCommentCheck);
RolePermissions.DeleteNodePermissionFromRoles(this.m_RoleId, -2, OperateCode.NodeCommentManage);
RolePermissions.AddNodePermissionToRoles(this.m_RoleId, OperateCode.NodeCommentReply, roleIdList.ToString());
RolePermissions.AddNodePermissionToRoles(this.m_RoleId, OperateCode.NodeCommentCheck, builder2.ToString());
RolePermissions.AddNodePermissionToRoles(this.m_RoleId, OperateCode.NodeCommentManage, builder3.ToString());
}
private void GetNodeSelectPermission()
{
StringBuilder roleIdList = new StringBuilder();
StringBuilder builder2 = new StringBuilder();
string selectId = "";
this.m_CurrentNodesManageAll = ((CheckBox) this.EgvNodes.Rows[0].FindControl("ChkCurrentNodesManage")).Checked;
this.m_ChildNodeManageAll = ((CheckBox) this.EgvNodes.Rows[0].FindControl("ChkChildNodeManage")).Checked;
for (int i = 0; i < this.EgvNodes.Rows.Count; i++)
{
this.m_ChkCurrentNodesManage = (CheckBox) this.EgvNodes.Rows[i].Cells[2].FindControl("ChkCurrentNodesManage");
this.m_ChildNodeManage = (CheckBox) this.EgvNodes.Rows[i].Cells[3].FindControl("ChkChildNodeManage");
selectId = this.EgvNodes.DataKeys[i].Value.ToString();
AppendSelectId(this.m_ChkCurrentNodesManage.Checked || this.m_CurrentNodesManageAll, selectId, ref roleIdList);
AppendSelectId(this.m_ChildNodeManage.Checked || this.m_ChildNodeManageAll, selectId, ref builder2);
}
AppendAllId(roleIdList, this.EgvNodes.Rows.Count - 1);
AppendAllId(builder2, this.EgvNodes.Rows.Count - 1);
RolePermissions.DeleteNodePermissionFromRoles(this.m_RoleId, -2, OperateCode.CurrentNodesManage);
RolePermissions.DeleteNodePermissionFromRoles(this.m_RoleId, -2, OperateCode.ChildNodesManage);
RolePermissions.AddNodePermissionToRoles(this.m_RoleId, OperateCode.CurrentNodesManage, roleIdList.ToString());
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -