diff --git a/config templates/config/trees.config b/config templates/config/trees.config index 30932566bf..6f5f902e5a 100644 --- a/config templates/config/trees.config +++ b/config templates/config/trees.config @@ -44,10 +44,12 @@ iconClosed="folder.gif" iconOpen="folder_o.gif" sortOrder="3" /> + + iconClosed="folder.gif" iconOpen="folder_o.gif" sortOrder="5" /> + iconClosed=".sprTreeFolder" iconOpen=".sprTreeFolder_o" sortOrder="6" /> + diff --git a/src/umbraco.presentation/umbraco.presentation.csproj b/src/umbraco.presentation/umbraco.presentation.csproj index ff319e2e87..d2c3df7cd6 100644 --- a/src/umbraco.presentation/umbraco.presentation.csproj +++ b/src/umbraco.presentation/umbraco.presentation.csproj @@ -1414,6 +1414,7 @@ Code + @@ -1431,12 +1432,10 @@ NewRelationType.aspx - RelationTypesWebService.asmx Component - diff --git a/src/umbraco.presentation/umbraco/Trees/RelationTypes/RelationTypeTree.cs b/src/umbraco.presentation/umbraco/Trees/RelationTypes/RelationTypeTree.cs deleted file mode 100644 index 9a03ee8110..0000000000 --- a/src/umbraco.presentation/umbraco/Trees/RelationTypes/RelationTypeTree.cs +++ /dev/null @@ -1,101 +0,0 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Web; - -using umbraco.BusinessLogic.Actions; -using umbraco.cms.businesslogic.relation; -using umbraco.cms.presentation.Trees; // BaseTree -using umbraco.DataLayer; -using umbraco.interfaces; - -using Umbraco.RelationTypes.TreeMenu; - -namespace umbraco.cms.presentation.Trees.RelationTypes -{ - /// - /// RelationTypes tree for developer section - /// http://our.umbraco.org/wiki/reference/backoffice-apis/tree-api-to-create-custom-treesapplications - /// (to comply with Umbraco naming conventions rename this class to loadRelationTypes) - /// - public class RelationTypeTree : BaseTree - { - /// - /// Initializes a new instance of the RelationTypeTree class. - /// - /// name of umbraco app to which this tree has been added, (in this case "developer") - public RelationTypeTree(string application) : base(application) - { - } - - /// - /// Builds the javascript methods for use by the nodes in this tree - /// - /// string container for javascript - public override void RenderJS(ref StringBuilder javascript) - { - javascript.Append( - @" - function openRelationType(id) { - UmbClientMgr.contentFrame('Trees/RelationTypes/EditRelationType.aspx?id=' + id); - } - "); - } - - /// - /// This is called if the tree has been expanded, and it's used to render and child nodes for this tree - /// - /// current tree - public override void Render(ref XmlTree tree) - { - XmlTreeNode node; - - foreach (RelationType relationType in RelationType.GetAll().OrderBy(relationType => relationType.Name)) - { - node = XmlTreeNode.Create(this); - node.NodeID = relationType.Id.ToString(); - node.Text = relationType.Name; - node.Icon = "settingAgent.gif"; - node.Action = "javascript:openRelationType('" + node.NodeID + "');"; - - tree.Add(node); - } - } - - /// - /// Adds right click context tree actions for each child node - /// - /// collection of actions (expected to be empty) - protected override void CreateAllowedActions(ref List actions) - { - actions.Clear(); - actions.Add(ActionDeleteRelationType.Instance); - } - - /// - /// Adds right click context tree actions for the root 'Relation Types' node - /// - /// collection of actions (expected to be empty) - protected override void CreateRootNodeActions(ref List actions) - { - actions.Clear(); - actions.Add(ActionNewRelationType.Instance); - actions.Add(ContextMenuSeperator.Instance); - actions.Add(ActionRefresh.Instance); - } - - /// - /// Configures root node 'Relation Types' properties - /// - /// the 'Relation Types' root node - protected override void CreateRootNode(ref XmlTreeNode rootNode) - { - rootNode.Text = "Relation Types"; - rootNode.Icon = BaseTree.FolderIcon; - rootNode.OpenIcon = BaseTree.FolderIconOpen; - rootNode.NodeType = this.TreeAlias; // (Was prefixed with innit) - rootNode.NodeID = "init"; - } - } -} diff --git a/src/umbraco.presentation/umbraco/Trees/loadRelationTypes.cs b/src/umbraco.presentation/umbraco/Trees/loadRelationTypes.cs new file mode 100644 index 0000000000..007457b36a --- /dev/null +++ b/src/umbraco.presentation/umbraco/Trees/loadRelationTypes.cs @@ -0,0 +1,98 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Web; +using umbraco.BusinessLogic.Actions; +using umbraco.cms.businesslogic.relation; +using umbraco.cms.presentation.Trees; +using umbraco.DataLayer; +using umbraco.interfaces; +using Umbraco.RelationTypes.TreeMenu; +using umbraco.businesslogic; + +namespace umbraco +{ + /// + /// RelationTypes tree for developer section + /// + [Tree("developer", "relationTypes", "Relation Types", sortOrder: 4)] + public class loadRelationTypes : BaseTree + { + /// + /// Initializes a new instance of the RelationTypeTree class. + /// + /// name of umbraco app to which this tree has been added, (in this case "developer") + public loadRelationTypes(string application) + : base(application) + { + } + + /// + /// Builds the javascript methods for use by the nodes in this tree + /// + /// string container for javascript + public override void RenderJS(ref StringBuilder javascript) + { + javascript.Append(@" + function openRelationType(id) { + UmbClientMgr.contentFrame('Trees/RelationTypes/EditRelationType.aspx?id=' + id); + }"); + } + + /// + /// This is called if the tree has been expanded, and it's used to render and child nodes for this tree + /// + /// current tree + public override void Render(ref XmlTree tree) + { + XmlTreeNode node; + + foreach (RelationType relationType in RelationType.GetAll().OrderBy(relationType => relationType.Name)) + { + node = XmlTreeNode.Create(this); + node.NodeID = relationType.Id.ToString(); + node.Text = relationType.Name; + node.Icon = "settingAgent.gif"; + node.Action = "javascript:openRelationType('" + node.NodeID + "');"; + + tree.Add(node); + } + } + + /// + /// Adds right click context tree actions for each child node + /// + /// collection of actions (expected to be empty) + protected override void CreateAllowedActions(ref List actions) + { + actions.Clear(); + actions.Add(ActionDeleteRelationType.Instance); + } + + /// + /// Adds right click context tree actions for the root 'Relation Types' node + /// + /// collection of actions (expected to be empty) + protected override void CreateRootNodeActions(ref List actions) + { + actions.Clear(); + actions.Add(ActionNewRelationType.Instance); + actions.Add(ContextMenuSeperator.Instance); + actions.Add(ActionRefresh.Instance); + } + + /// + /// Configures root node 'Relation Types' properties + /// + /// the 'Relation Types' root node + protected override void CreateRootNode(ref XmlTreeNode rootNode) + { + rootNode.Text = "Relation Types"; + rootNode.Icon = BaseTree.FolderIcon; + rootNode.OpenIcon = BaseTree.FolderIconOpen; + rootNode.NodeType = this.TreeAlias; // (Was prefixed with init) + rootNode.NodeID = "init"; + } + } +}