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

📄 grouptreeviewcontrol.ascx

📁 community server 源码
💻 ASCX
📖 第 1 页 / 共 2 页
字号:
{
	window.<%=this.Tree.ClientObjectId%>.SelectedNode = null;
	var newGroupNode = new ComponentArt_TreeViewNode();
	//newGroupNode.Text = groupName;
	//newGroupNode.ImageUrl = "folders.gif";
	//newGroupNode.EditingEnabled = true;
	//newGroupNode.DraggingEnabled = true;
	//newGroupNode.DroppingEnabled = true;
	//newGroupNode.ClientSideOnNodeSelect="nodeSelect";
	//newGroupNode.Selectable = true;
	//newGroupNode.Value = groupID + ":-1";
	//newGroupNode.ID = groupID + ":-1";
	
	newGroupNode.SetProperty('Text', groupName);
	newGroupNode.SetProperty('ImageUrl', "folders.gif");
	newGroupNode.SetProperty('EditingEnabled', true);
	newGroupNode.SetProperty('DraggingEnabled', true);
	newGroupNode.SetProperty('DroppingEnabled', true);
	newGroupNode.SetProperty('ClientSideOnNodeSelect', "nodeSelect");
	newGroupNode.SetProperty('Selectable', true);
	newGroupNode.SetProperty('Value', groupID + ":-1");
	newGroupNode.SetProperty('ID', groupID + ":-1");
	
	var rootNode = window.<%=this.Tree.ClientObjectId%>.FindNodeById("RootNode");
	if (rootNode != null)
	{
		groupNodeSelected = newGroupNode;
		rootNode.AddNode(newGroupNode);
		window.<%=this.Tree.ClientObjectId%>.SelectedNode = newGroupNode;
		window.<%=this.Tree.ClientObjectId%>.Render();
	}
	
}

//## ADD SECTION ##

function AddSection(groupID)
{
	toggleButtons();
	
	selectedNode = window.<%=this.Tree.ClientObjectId%>.SelectedNode;

	// If a GroupID was not passed, get it from the selected node
	if (groupID == null)
	{
		if (selectedNode == null)
		{
			alert("<%= CommunityServer.ControlPanel.Components.ResourceManager.GetString("CP_GroupManager_PleaseSelectAGroup") %>");
			toggleButtons();
			return;
		}
		else
			groupID = getGroupID(selectedNode);
	}

	newNodeSeq = newNodeSeq + 1; //ensure unique key names
	newNodeGroupID = groupID;
	AddSectionNode(groupID, '0:'+newNodeSeq, '')
	var newNode = window.<%=this.Tree.ClientObjectId%>.FindNodeById(groupID + ":0:"+newNodeSeq);
	//newNode.EditingEnabled = true;
	//newNode.DraggingEnabled = false;
	//newNode.DroppingEnabled = false;
	
	newNode.SetProperty('EditingEnabled', true);
	newNode.SetProperty('DraggingEnabled', false);
	newNode.SetProperty('DroppingEnabled', false);

	//newNode.SaveState();
	window.<%=this.Tree.ClientObjectId%>.Render();
	newNode.Edit();
}

function AddSectionCallBack(res)
{
	cleanupNewNode();
	if (res.value == '0')
	{
		alert("<%= CommunityServer.ControlPanel.Components.ResourceManager.GetString("CP_BlogAdmin_SectionEdit_Settings_AppKey_DuplicateNameException") %>");
	}
	else if(res.value != '-1')
	{
		var retVals = res.value.split("^");
		var groupID = retVals[0];
		var sectionID = retVals[1];
		var sectionName = retVals[2];
		
	
		AddSectionNode(groupID, sectionID, sectionName)
		window.frames["sectionEditFrame"].location  = "IFrameHost.aspx?SectionID=" + sectionID + "&GroupID=" + groupID;
	}
	toggleButtons();
}
function cleanupNewNode()
{
	var newNode = window.<%=this.Tree.ClientObjectId%>.FindNodeById(newNodeGroupID + ":0:"+newNodeSeq);
	window.<%=this.Tree.ClientObjectId%>.SelectedNode = null;
		//var parentNode = sourceNode.ParentNode;
	newNode.Remove();
	//newNode.SaveState();
	window.<%=this.Tree.ClientObjectId%>.Render();
}
function AddSectionNode(groupID, sectionID, name)
{
	var rootNode = window.<%=this.Tree.ClientObjectId%>.FindNodeById(groupID + ":-1");
	if(rootNode != null)
	{
		var newSectionNode = new ComponentArt_TreeViewNode();
		//newSectionNode.Text = name;
		//newSectionNode.ImageUrl = "notesdisabled.gif";
		//newSectionNode.Checked = null;
		//newSectionNode.EditingEnabled = false;
		//newSectionNode.NodeEditingEnabled = false;
		//newSectionNode.DraggingEnabled = true;
		//newSectionNode.DroppingEnabled = true;
		//newSectionNode.ClientSideOnNodeSelect="nodeSelect";
		//newSectionNode.Selectable = true;
		//newSectionNode.Value = groupID + ":" + sectionID;
		//newSectionNode.ID = groupID + ":" + sectionID;

		newSectionNode.SetProperty('Text', name);
		newSectionNode.SetProperty('ImageUrl', "notesdisabled.gif");
		newSectionNode.SetProperty('Checked', null);
		newSectionNode.SetProperty('EditingEnabled', false);
		newSectionNode.SetProperty('DraggingEnabled', true);
		newSectionNode.SetProperty('DroppingEnabled', true);
		newSectionNode.SetProperty('ClientSideOnNodeSelect', "nodeSelect");
		newSectionNode.SetProperty('Selectable', true);
		newSectionNode.SetProperty('Value', groupID + ":" + sectionID);
		newSectionNode.SetProperty('ID', groupID + ":" + sectionID);
		rootNode.AddNode(newSectionNode);
		window.<%=this.Tree.ClientObjectId%>.SelectedNode = newSectionNode;
		window.<%=this.Tree.ClientObjectId%>.Render();
		
		rootNode.Expand();
		window.<%=this.Tree.ClientObjectId%>.Render();

	}
	else
	{
		window.location = window.location;
	}
	
}

//## END ADD ##

//## ENABLE SECTION TOGGLE ##

ChangeSectionEnabled
function ChangeSectionEnabled(groupID, sectionID )
{
	GroupTreeViewControl.ChangeSectionEnabled('<%= this.ClientID %>', groupID, sectionID, ChangeSectionEnabledCallBack);
}
function ChangeSectionEnabledCallBack(res)
{
	if(res.value == '-1') //not an admin
		return;
		
	var retVals = res.value.split("^");
	var groupID = retVals[0];
	var sectionID = retVals[1];

	var changedNode = window.<%=this.Tree.ClientObjectId%>.FindNodeById(groupID + ":" + sectionID);
	if (changedNode != null)
	{
		if(changedNode.Checked == 1) //used for enabled
		{
			//changedNode.ImageUrl = "notesdisabled.gif";
			//changedNode.Checked = null;
			changedNode.SetProperty('ImageUrl', "notesdisabled.gif");
			changedNode.SetProperty('Checked', null);
		}
		else
		{
			//changedNode.ImageUrl = "notes.gif";
			//changedNode.Checked = 1;
			changedNode.SetProperty('ImageUrl', "notes.gif");
			changedNode.SetProperty('Checked',  1);
		}
		//changedNode.SaveState();
		window.<%=this.Tree.ClientObjectId%>.Render();
		
		//update the iframe
		if(window.<%=this.Tree.ClientObjectId%>.SelectedNode != null && changedNode.ID == window.<%=this.Tree.ClientObjectId%>.SelectedNode.ID)
			nodeSelect(changedNode); 
	}
	
	return;
}

function toggleButtons()
{
	toggleVisibility('<%=this.AddGroupButtonClientID %>');
	toggleVisibility('<%=this.DeleteButtonClientID  %>');
	toggleVisibility('<%=this.AddSectionButtonClientID  %>');
}
function toggleVisibility( targetId ){ 
  if (document.getElementById){ 
        target = document.getElementById( targetId ); 
           if (target.style.display == "none"){ 
              target.style.display = ""; 
           } else { 
              target.style.display = "none"; 
           } 
     } 
} 

//## DELETE ##
function DeleteSelected(groupID, sectionID)
{
	// If a GroupID was not passed, get it from the selected node
	if (groupID == null || sectionID == null)
	{
		if (window.<%=this.Tree.ClientObjectId%>.SelectedNode == null)
			return;
		else
			nodeID = window.<%=this.Tree.ClientObjectId%>.SelectedNode.ID;

		var vals = nodeID.split(":");
		groupID = vals[0];
		sectionID = vals[1];
	}
	
	if( sectionID == '-1' && groupID == '-1')
		return;
	
	//clear the iframe if we are deleting the current item
	if (window.<%=this.Tree.ClientObjectId%>.SelectedNode != null)
	{
		var theCurrentNode = window.<%=this.Tree.ClientObjectId%>.SelectedNode
		if(getSectionID(theCurrentNode) == sectionID &&  getGroupID(theCurrentNode) == groupID)
			window.frames["sectionEditFrame"].location  = "IFrameHost.aspx?SectionID=0&GroupID=0";
	}
		
	if( sectionID != '-1')
		DeleteSection(groupID, sectionID);
	else
		DeleteGroup(groupID);
}

//## DELETE GROUP ##

function DeleteGroup(groupID)
{
	GroupTreeViewControl.DeleteGroup('<%= this.ClientID %>', groupID, DeleteGroupCallBack);
}

function DeleteGroupCallBack(res)
{
	if (res.value == null)
	{
		alert('<%= CommunityServer.ControlPanel.Components.ResourceManager.GetString("CP_Forums_TreeView_DeleteGroupError") %>');
		return;
	}
	
	if (res.value == 0)
	{
		alert('<%= CommunityServer.ControlPanel.Components.ResourceManager.GetString("CP_BlogAdmin_GroupList_GroupNotEmptyException") %>');
		return;
	}
	
	var deletedNode = window.<%=this.Tree.ClientObjectId%>.FindNodeById(res.value + ":-1");
	if (deletedNode != null)
	{
		deletedNode.Remove();
		window.<%=this.Tree.ClientObjectId%>.Render();
	}
		
	return;
}

//## DELETE SECTION ##
function DeleteSection(groupID, sectionID)
{
	if(confirm('<%= CommunityServer.ControlPanel.Components.ResourceManager.GetString("CP_BlogAdmin_Blogs_Delete_Warning") %>'))
		GroupTreeViewControl.DeleteSection('<%= this.ClientID %>', groupID, sectionID,  DeleteSectionCallBack);
}

function DeleteSectionCallBack(res)
{

	if (res.value == null)
	{
		alert('<%= CommunityServer.ControlPanel.Components.ResourceManager.GetString("CP_BlogAdmin_GroupList_SectionDeleteException") %>');
		return;
	}
	
	if (res.value == "0")
	{
		alert('<%= CommunityServer.ControlPanel.Components.ResourceManager.GetString("CP_BlogAdmin_GroupList_SectionDeleteException") %>');
		return;
	}
	
	var retVals = res.value.split("^");
	var groupID = retVals[0];
	var sectionID = retVals[1];
	
	var deletedNode = window.<%=this.Tree.ClientObjectId%>.FindNodeById(groupID + ":" + sectionID);
	if (deletedNode != null)
	{
		deletedNode.Remove();
		window.<%=this.Tree.ClientObjectId%>.Render();
	}
		
	return;
}
//## END DELETE ##

//for splitter support
function resizeCategoryTree(DomElementId, NewPaneHeight, NewPaneWidth)
    {
      // Forces the treeview to adjust to the new size of its container 
		window.<%=this.Tree.ClientID%>.Render();
		if(DomElementId != null)
			resizeDetails();
    }

//-->
</script>
<cs:contextmenu filename="~/ControlPanel/BlogAdmin/GroupNodeContextMenu.config" runat="server" id="GroupContextMenu"
	onmenuopenscript="" onmenuclosescript="" />
<cs:contextmenu filename="~/ControlPanel/BlogAdmin/SectionNodeEnabledContextMenu.config" runat="server"
	id="SectionEnabledContextMenu" onmenuopenscript="" onmenuclosescript="" />
<cs:contextmenu filename="~/ControlPanel/BlogAdmin/SectionNodeDisabledContextMenu.config" runat="server"
	id="SectionDisabledContextMenu" onmenuopenscript="" onmenuclosescript="" />
<ca:treeview id="Tree" Width="100%" Height="100%" draganddropenabled="true" nodeeditingenabled="true"
	keyboardenabled="true" AllowTextSelection="true" cssclass="ForumFolderTree" nodecssclass="ForumFolderTreeNode"
	selectednodecssclass="ForumFolderTreeNodeSelected" hovernodecssclass="ForumFolderTreeNodeHover"
	lineimagewidth="19" lineimageheight="20" defaultimagewidth="16" defaultimageheight="16" ExpandCollapseImageWidth="17"
	ExpandCollapseImageHeight="15" itemspacing="0" imagesbaseurl="~/ControlPanel/Images/CATreeView/small_icons/"
	nodelabelpadding="0" parentnodeimageurl="folder.gif" expandedparentnodeimageurl="folder_open.gif"
	showlines="true" lineimagesfolderurl="~/ControlPanel/Images/CATreeView/small_icons/lines/"
	enableviewstate="false" ClientSideOnNodeMove="nodeMove" ClientSideOnNodeRename="nodeRename"
	ClientSideOnNodeMouseOut="checkNodeIndex" ClientSideOnNodeMouseOver="checkNodeIndex" ClientSideOnNodeSelect="nodeSelect"
	ExpandNodeOnSelect="true" CollapseNodeOnSelect="false" AutoPostBackOnSelect="false" AutoPostBackOnNodeMove="false" dropsiblingenabled="true"
	OnContextMenu="treeContextMenu" runat="server" MultipleSelectEnabled="False" BorderColor="#CCCCCC"
	BorderStyle="Solid" BorderWidth="0" FillContainer="True"></ca:treeview>

⌨️ 快捷键说明

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