diff --git a/src/Umbraco.Core/Constants-Applications.cs b/src/Umbraco.Core/Constants-Applications.cs
index 12f7076fc4..fb1fb42044 100644
--- a/src/Umbraco.Core/Constants-Applications.cs
+++ b/src/Umbraco.Core/Constants-Applications.cs
@@ -73,6 +73,11 @@
///
public const string DataTypes = "dataTypes";
+ ///
+ /// alias for the packages tree
+ ///
+ public const string Packages = "packager";
+
///
/// alias for the dictionary tree.
///
diff --git a/src/Umbraco.Web.UI.Client/src/views/packagesNew/category.controller.js b/src/Umbraco.Web.UI.Client/src/views/packager/category.controller.js
similarity index 100%
rename from src/Umbraco.Web.UI.Client/src/views/packagesNew/category.controller.js
rename to src/Umbraco.Web.UI.Client/src/views/packager/category.controller.js
diff --git a/src/Umbraco.Web.UI.Client/src/views/packagesNew/category.html b/src/Umbraco.Web.UI.Client/src/views/packager/category.html
similarity index 100%
rename from src/Umbraco.Web.UI.Client/src/views/packagesNew/category.html
rename to src/Umbraco.Web.UI.Client/src/views/packager/category.html
diff --git a/src/Umbraco.Web.UI.Client/src/views/packagesNew/details.controller.js b/src/Umbraco.Web.UI.Client/src/views/packager/details.controller.js
similarity index 100%
rename from src/Umbraco.Web.UI.Client/src/views/packagesNew/details.controller.js
rename to src/Umbraco.Web.UI.Client/src/views/packager/details.controller.js
diff --git a/src/Umbraco.Web.UI.Client/src/views/packagesNew/details.html b/src/Umbraco.Web.UI.Client/src/views/packager/details.html
similarity index 100%
rename from src/Umbraco.Web.UI.Client/src/views/packagesNew/details.html
rename to src/Umbraco.Web.UI.Client/src/views/packager/details.html
diff --git a/src/Umbraco.Web.UI.Client/src/views/packagesNew/overview.controller.js b/src/Umbraco.Web.UI.Client/src/views/packager/overview.controller.js
similarity index 83%
rename from src/Umbraco.Web.UI.Client/src/views/packagesNew/overview.controller.js
rename to src/Umbraco.Web.UI.Client/src/views/packager/overview.controller.js
index 3a45f42761..487a715042 100644
--- a/src/Umbraco.Web.UI.Client/src/views/packagesNew/overview.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/packager/overview.controller.js
@@ -1,7 +1,7 @@
(function () {
"use strict";
- function PackagesOverviewController($scope, $route, $location) {
+ function PackagesOverviewController($scope, $route, $location, navigationService, $timeout) {
var vm = this;
@@ -26,6 +26,10 @@
}
];
+ $timeout(function() {
+ navigationService.syncTree({ tree: "packager", path: "-1" });
+ });
+
}
angular.module("umbraco").controller("Umbraco.Editors.Packages.OverviewController", PackagesOverviewController);
diff --git a/src/Umbraco.Web.UI.Client/src/views/packagesNew/overview.html b/src/Umbraco.Web.UI.Client/src/views/packager/overview.html
similarity index 100%
rename from src/Umbraco.Web.UI.Client/src/views/packagesNew/overview.html
rename to src/Umbraco.Web.UI.Client/src/views/packager/overview.html
diff --git a/src/Umbraco.Web.UI.Client/src/views/packagesNew/views/install-local.controller.js b/src/Umbraco.Web.UI.Client/src/views/packager/views/install-local.controller.js
similarity index 100%
rename from src/Umbraco.Web.UI.Client/src/views/packagesNew/views/install-local.controller.js
rename to src/Umbraco.Web.UI.Client/src/views/packager/views/install-local.controller.js
diff --git a/src/Umbraco.Web.UI.Client/src/views/packagesNew/views/install-local.html b/src/Umbraco.Web.UI.Client/src/views/packager/views/install-local.html
similarity index 100%
rename from src/Umbraco.Web.UI.Client/src/views/packagesNew/views/install-local.html
rename to src/Umbraco.Web.UI.Client/src/views/packager/views/install-local.html
diff --git a/src/Umbraco.Web.UI.Client/src/views/packagesNew/views/installed.controller.js b/src/Umbraco.Web.UI.Client/src/views/packager/views/installed.controller.js
similarity index 100%
rename from src/Umbraco.Web.UI.Client/src/views/packagesNew/views/installed.controller.js
rename to src/Umbraco.Web.UI.Client/src/views/packager/views/installed.controller.js
diff --git a/src/Umbraco.Web.UI.Client/src/views/packagesNew/views/installed.html b/src/Umbraco.Web.UI.Client/src/views/packager/views/installed.html
similarity index 100%
rename from src/Umbraco.Web.UI.Client/src/views/packagesNew/views/installed.html
rename to src/Umbraco.Web.UI.Client/src/views/packager/views/installed.html
diff --git a/src/Umbraco.Web.UI.Client/src/views/packagesNew/views/repo.controller.js b/src/Umbraco.Web.UI.Client/src/views/packager/views/repo.controller.js
similarity index 100%
rename from src/Umbraco.Web.UI.Client/src/views/packagesNew/views/repo.controller.js
rename to src/Umbraco.Web.UI.Client/src/views/packager/views/repo.controller.js
diff --git a/src/Umbraco.Web.UI.Client/src/views/packagesNew/views/repo.html b/src/Umbraco.Web.UI.Client/src/views/packager/views/repo.html
similarity index 100%
rename from src/Umbraco.Web.UI.Client/src/views/packagesNew/views/repo.html
rename to src/Umbraco.Web.UI.Client/src/views/packager/views/repo.html
diff --git a/src/Umbraco.Web.UI/config/trees.config b/src/Umbraco.Web.UI/config/trees.config
index 6c9fb153b6..456a72cecb 100644
--- a/src/Umbraco.Web.UI/config/trees.config
+++ b/src/Umbraco.Web.UI/config/trees.config
@@ -19,8 +19,6 @@
-
-
@@ -42,5 +40,5 @@
-
+
\ No newline at end of file
diff --git a/src/Umbraco.Web/Trees/NewPackagesTreeController.cs b/src/Umbraco.Web/Trees/NewPackagesTreeController.cs
deleted file mode 100644
index 9d3726540a..0000000000
--- a/src/Umbraco.Web/Trees/NewPackagesTreeController.cs
+++ /dev/null
@@ -1,51 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Globalization;
-using System.Linq;
-using System.Net;
-using System.Net.Http.Formatting;
-using System.Web.Http;
-using Umbraco.Core;
-using Umbraco.Core.Models;
-using Umbraco.Web.Models.Trees;
-using Umbraco.Web.Mvc;
-using Umbraco.Web.WebApi.Filters;
-using umbraco;
-using umbraco.BusinessLogic.Actions;
-using Umbraco.Core.Models.EntityBase;
-using Umbraco.Core.Services;
-using Constants = Umbraco.Core.Constants;
-
-namespace Umbraco.Web.Trees
-{
- [UmbracoTreeAuthorize(Constants.Trees.DataTypes)]
- [Tree(Constants.Applications.Developer, "packagesNew")]
- [PluginController("UmbracoTrees")]
- [CoreTree]
- public class NewPackagesTreeController : TreeController
- {
- protected override TreeNodeCollection GetTreeNodes(string id, FormDataCollection queryStrings)
- {
- var baseUrl = Constants.Applications.Developer + "/packagesNew/";
-
- var nodes = new TreeNodeCollection();
-
- var node = CreateTreeNode("1", id, queryStrings, "Name", "icon-folder", false, "");
- node.Path = "path";
- node.RoutePath = baseUrl + "overview";
- //node.NodeType = "container";
- //TODO: This isn't the best way to ensure a noop process for clicking a node but it works for now.
- //node.AdditionalData["jsClickCallback"] = "javascript:void(0);";
-
- nodes.Add(node);
-
- return nodes;
- }
-
- protected override MenuItemCollection GetMenuForNode(string id, FormDataCollection queryStrings)
- {
- var menu = new MenuItemCollection();
- return menu;
- }
- }
-}
\ No newline at end of file
diff --git a/src/Umbraco.Web/Trees/PackagesTreeController.cs b/src/Umbraco.Web/Trees/PackagesTreeController.cs
new file mode 100644
index 0000000000..4f8b70693e
--- /dev/null
+++ b/src/Umbraco.Web/Trees/PackagesTreeController.cs
@@ -0,0 +1,97 @@
+using System;
+using System.Collections.Generic;
+using System.Globalization;
+using System.Linq;
+using System.Net;
+using System.Net.Http.Formatting;
+using System.Web.Http;
+using Umbraco.Core;
+using Umbraco.Core.Models;
+using Umbraco.Web.Models.Trees;
+using Umbraco.Web.Mvc;
+using Umbraco.Web.WebApi.Filters;
+using umbraco;
+using umbraco.BusinessLogic.Actions;
+using umbraco.cms.businesslogic.packager;
+using Umbraco.Core.Models.EntityBase;
+using Umbraco.Core.Services;
+using Constants = Umbraco.Core.Constants;
+
+namespace Umbraco.Web.Trees
+{
+ [UmbracoTreeAuthorize(Constants.Trees.Packages)]
+ [Tree(Constants.Applications.Developer, Constants.Trees.Packages, null, sortOrder: 3)]
+ [PluginController("UmbracoTrees")]
+ [CoreTree]
+ [LegacyBaseTree(typeof(loadPackager))]
+ public class PackagesTreeController : TreeController
+ {
+ ///
+ /// Helper method to create a root model for a tree
+ ///
+ ///
+ protected override TreeNode CreateRootNode(FormDataCollection queryStrings)
+ {
+ var root = base.CreateRootNode(queryStrings);
+
+ //this will load in a custom UI instead of the dashboard for the root node
+ root.RoutePath = string.Format("{0}/{1}/{2}", Constants.Applications.Developer, Constants.Trees.Packages, "overview");
+ root.Icon = "icon-box";
+
+ return root;
+ }
+
+ protected override TreeNodeCollection GetTreeNodes(string id, FormDataCollection queryStrings)
+ {
+ var baseUrl = Constants.Applications.Developer + "/packages/";
+
+ var nodes = new TreeNodeCollection();
+
+ var createdPackages = CreatedPackage.GetAllCreatedPackages();
+
+ if (id == "created")
+ {
+ nodes.AddRange(
+ createdPackages
+ .OrderBy(entity => entity.Data.Name)
+ .Select(dt =>
+ {
+ var node = CreateTreeNode(dt.Data.Id.ToString(), id, queryStrings, dt.Data.Name, "icon-inbox", false,
+ string.Format("/{0}/framed/{1}",
+ queryStrings.GetValue("application"),
+ Uri.EscapeDataString("developer/Packages/EditPackage.aspx?id=" + dt.Data.Id)));
+ return node;
+ }));
+ }
+ else
+ {
+ //must be root
+ var node = CreateTreeNode(
+ "created",
+ id,
+ queryStrings,
+ Services.TextService.Localize("treeHeaders/createdPackages"),
+ "icon-folder",
+ createdPackages.Count > 0,
+ string.Empty);
+
+
+
+ //TODO: This isn't the best way to ensure a noop process for clicking a node but it works for now.
+ node.AdditionalData["jsClickCallback"] = "javascript:void(0);";
+
+ nodes.Add(node);
+ }
+
+
+
+ return nodes;
+ }
+
+ protected override MenuItemCollection GetMenuForNode(string id, FormDataCollection queryStrings)
+ {
+ var menu = new MenuItemCollection();
+ return menu;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/Umbraco.Web/Umbraco.Web.csproj b/src/Umbraco.Web/Umbraco.Web.csproj
index 5102416548..f0e4b82aa3 100644
--- a/src/Umbraco.Web/Umbraco.Web.csproj
+++ b/src/Umbraco.Web/Umbraco.Web.csproj
@@ -376,7 +376,7 @@
-
+
diff --git a/src/Umbraco.Web/umbraco.presentation/umbraco/Trees/loadPackager.cs b/src/Umbraco.Web/umbraco.presentation/umbraco/Trees/loadPackager.cs
index 5df6cc6f2a..5470d530ad 100644
--- a/src/Umbraco.Web/umbraco.presentation/umbraco/Trees/loadPackager.cs
+++ b/src/Umbraco.Web/umbraco.presentation/umbraco/Trees/loadPackager.cs
@@ -30,7 +30,8 @@ namespace umbraco
///
/// Handles loading of the packager application into the developer application tree
///
- [Tree(Constants.Applications.Developer, "packager", "Packages", sortOrder: 3)]
+ //[Tree(Constants.Applications.Developer, "packager", "Packages", sortOrder: 3)]
+ [Obsolete("This is no longer used and will be removed from the codebase in the future")]
public class loadPackager : BaseTree
{
#region TreeI Members
diff --git a/src/Umbraco.Web/umbraco.presentation/umbraco/Trees/loadPackages.cs b/src/Umbraco.Web/umbraco.presentation/umbraco/Trees/loadPackages.cs
index 7bbf789981..154f995618 100644
--- a/src/Umbraco.Web/umbraco.presentation/umbraco/Trees/loadPackages.cs
+++ b/src/Umbraco.Web/umbraco.presentation/umbraco/Trees/loadPackages.cs
@@ -12,7 +12,8 @@ using umbraco.interfaces;
namespace umbraco
{
- [Tree(Constants.Applications.Developer, "packagerPackages", "Packager Packages", initialize: false, sortOrder: 1)]
+ //[Tree(Constants.Applications.Developer, "packagerPackages", "Packager Packages", initialize: false, sortOrder: 1)]
+ [Obsolete("This is no longer used and will be removed from the codebase in the future")]
public class loadPackages : BaseTree
{
diff --git a/src/Umbraco.Web/umbraco.presentation/umbraco/developer/Packages/editPackage.aspx.cs b/src/Umbraco.Web/umbraco.presentation/umbraco/developer/Packages/editPackage.aspx.cs
index ceae3d5659..f9835223be 100644
--- a/src/Umbraco.Web/umbraco.presentation/umbraco/developer/Packages/editPackage.aspx.cs
+++ b/src/Umbraco.Web/umbraco.presentation/umbraco/developer/Packages/editPackage.aspx.cs
@@ -12,6 +12,7 @@ using umbraco.cms.businesslogic.template;
using umbraco.cms.businesslogic.web;
using umbraco.cms.presentation.Trees;
using umbraco.controls;
+using Umbraco.Core;
using Umbraco.Core.IO;
namespace umbraco.presentation.developer.packages
@@ -65,8 +66,8 @@ namespace umbraco.presentation.developer.packages
if (Page.IsPostBack == false)
{
ClientTools
- .SetActiveTreeType(TreeDefinitionCollection.Instance.FindTree().Tree.Alias)
- .SyncTree("-1,init," + loadPackages.PACKAGE_TREE_PREFIX + createdPackage.Data.Id, false);
+ .SetActiveTreeType(Constants.Trees.Packages)
+ .SyncTree("-1,created," + createdPackage.Data.Id, false);
packageAuthorName.Text = pack.Author;
packageAuthorUrl.Text = pack.AuthorUrl;