📄 contenttreexml.aspx.cs
字号:
namespace PowerEasy.WebSite.Admin.Contents
{
using PowerEasy.AccessManage;
using PowerEasy.Common;
using PowerEasy.CommonModel;
using PowerEasy.Components;
using PowerEasy.Contents;
using PowerEasy.Controls;
using PowerEasy.Enumerations;
using PowerEasy.Model.Contents;
using PowerEasy.Web.UI;
using System;
using System.Data;
using System.Text;
using System.Web;
using System.Web.UI.HtmlControls;
public class ContentTreeXml : AdminPage
{
protected HtmlForm form1;
private bool m_IsCurrentNodesManage = true;
private bool m_IsInput = true;
private bool m_IsManage = true;
private bool m_IsShow = true;
private void AddXTreeItem(XTreeCollection xTreeList, NodeInfo nodeInfo)
{
this.CheckPermissions(nodeInfo);
if ((this.m_IsShow || this.m_IsInput) || this.m_IsManage)
{
XTreeItem item = new XTreeItem();
item.Text = nodeInfo.NodeName;
bool flag = false;
if (this.m_IsInput)
{
StringBuilder sb = new StringBuilder();
string str = "";
string str2 = "";
string str3 = string.Concat(new object[] { "ContentManage.aspx?NodeID=", nodeInfo.NodeId, "&NodeName=", HttpContext.Current.Server.UrlEncode(DataSecurity.XmlEncode(nodeInfo.NodeName)) });
foreach (DataRow row in ModelManager.GetContentModelListByNodeId(nodeInfo.NodeId, true).Rows)
{
StringHelper.AppendString(sb, row["ModelId"].ToString());
if (string.IsNullOrEmpty(str))
{
str = "添加" + row["ItemName"].ToString() + "||" + row["IsEshop"].ToString() + "||" + row["AddInfoFilePath"].ToString();
str = str + "||管理" + row["ItemName"].ToString() + "||" + row["IsEshop"].ToString() + "||" + row["ManageInfoFilePath"].ToString();
}
else
{
str = str + "$$$添加" + row["ItemName"].ToString() + "||" + row["IsEshop"].ToString() + "||" + row["AddInfoFilePath"].ToString();
str = str + "||管理" + row["ItemName"].ToString() + "||" + row["IsEshop"].ToString() + "||" + row["ManageInfoFilePath"].ToString();
}
if (this.m_IsCurrentNodesManage)
{
str2 = "1";
}
flag = true;
}
item.ArrModelId = sb.ToString();
item.ArrModelName = str;
item.ArrPurview = str2;
item.Title = "小贴士:您可以在节点名称上点击鼠标右键,从弹出菜单中选择相关操作。";
item.Action = str3;
}
item.NodeId = nodeInfo.NodeId.ToString();
item.Target = "main_right";
item.Expand = "0";
if (nodeInfo.Child > 0)
{
item.XmlSrc = "ContentTreeXml.aspx?NodeID=" + nodeInfo.NodeId;
}
string str4 = "";
if (!this.m_IsInput && !this.m_IsManage)
{
str4 = "Forbid";
item.Title = "您没有权限查看该节点下的内容";
item.AnchorType = "0";
}
else
{
switch (nodeInfo.PurviewType)
{
case 0:
str4 = "Container";
break;
case 1:
str4 = "HalfOpen";
break;
case 2:
str4 = "Purview";
break;
default:
str4 = "Container";
break;
}
if (!flag)
{
str4 = "Forbid";
item.AnchorType = "10";
if (this.m_IsCurrentNodesManage)
{
item.ArrPurview = "AllowSetNode";
}
else
{
item.ArrPurview = "NoAllowSetNode";
item.AnchorType = "0";
}
item.Title = "该节点没有绑定内容模型,请在右键弹出菜单中选择[设置节点]绑定内容模型";
}
else
{
item.AnchorType = "2";
}
}
item.Icon = str4;
xTreeList.Add(item);
}
}
private void CheckPermissions(NodeInfo nodeInfo)
{
string roleNodeId = "";
string str2 = "";
string str3 = "";
string str4 = "";
string str5 = "";
if (!this.Administrator)
{
this.m_IsShow = RolePermissions.AccessCheckNodePermission(OperateCode.NodeContentPreview, nodeInfo.NodeId);
this.m_IsInput = RolePermissions.AccessCheckNodePermission(OperateCode.NodeContentInput, nodeInfo.NodeId);
this.m_IsManage = RolePermissions.AccessCheckNodePermission(OperateCode.NodeContentManage, nodeInfo.NodeId);
this.m_IsCurrentNodesManage = RolePermissions.AccessCheckNodePermission(OperateCode.CurrentNodesManage, nodeInfo.NodeId);
roleNodeId = RolePermissions.GetRoleNodeId(PEContext.Current.Admin.Roles, OperateCode.NodeContentPreview);
str2 = RolePermissions.GetRoleNodeId(PEContext.Current.Admin.Roles, OperateCode.NodeContentInput);
str3 = RolePermissions.GetRoleNodeId(PEContext.Current.Admin.Roles, OperateCode.NodeContentCheck);
str4 = RolePermissions.GetRoleNodeId(PEContext.Current.Admin.Roles, OperateCode.NodeContentManage);
str5 = RolePermissions.GetRoleNodeId(PEContext.Current.Admin.Roles, OperateCode.CurrentNodesManage);
string arrChildId = nodeInfo.NodeId.ToString();
if ((nodeInfo.ArrChildId.IndexOf(",") > 0) && !this.m_IsShow)
{
if (!string.IsNullOrEmpty(nodeInfo.ArrChildId))
{
arrChildId = nodeInfo.ArrChildId;
}
if ((RolePermissions.CheckNodePurview(roleNodeId, arrChildId) || RolePermissions.CheckNodePurview(str2, arrChildId)) || (RolePermissions.CheckNodePurview(str3, arrChildId) || RolePermissions.CheckNodePurview(str4, arrChildId)))
{
this.m_IsShow = true;
}
}
if (nodeInfo.ParentId > 0)
{
arrChildId = nodeInfo.ParentPath + "," + nodeInfo.NodeId.ToString();
if (!this.m_IsShow)
{
this.m_IsShow = RolePermissions.CheckNodePurview(roleNodeId, arrChildId);
}
if (!this.m_IsInput)
{
this.m_IsInput = RolePermissions.CheckNodePurview(str2, arrChildId);
}
if (!this.m_IsManage)
{
this.m_IsManage = RolePermissions.CheckNodePurview(str4, arrChildId);
}
if (!this.m_IsCurrentNodesManage)
{
this.m_IsCurrentNodesManage = RolePermissions.CheckNodePurview(str5, arrChildId);
}
}
}
}
private void ContentXml(XTreeCollection xTreeList)
{
foreach (NodeInfo info in PowerEasy.Contents.Nodes.GetNodesListByParentId(DataConverter.CLng(HttpContext.Current.Request.QueryString["NodeID"])))
{
if (info.NodeType == NodeType.Container)
{
this.AddXTreeItem(xTreeList, info);
}
}
}
protected void Page_Load(object sender, EventArgs e)
{
base.Response.Clear();
base.Response.ContentType = "text/xml; charset=UTF-8";
base.Response.CacheControl = "no-cache";
XTreeCollection xTreeList = new XTreeCollection();
this.ContentXml(xTreeList);
base.Response.Write(xTreeList.ToString());
base.Response.End();
}
private bool Administrator
{
get
{
return PEContext.Current.Admin.IsSuperAdmin;
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -