From 999de5ae1ddab5e429d26804f4b3e738d201ee1b Mon Sep 17 00:00:00 2001 From: Mads Rasmussen Date: Mon, 6 Feb 2017 15:05:13 +0100 Subject: [PATCH] add client side logic for partial view macros folder creation --- .../partialviewmacros/create.controller.js | 37 ++++++++++++++++++- .../src/views/partialviewmacros/create.html | 10 ++--- 2 files changed, 40 insertions(+), 7 deletions(-) diff --git a/src/Umbraco.Web.UI.Client/src/views/partialviewmacros/create.controller.js b/src/Umbraco.Web.UI.Client/src/views/partialviewmacros/create.controller.js index 3b3fb0f9f5..46d2e1d648 100644 --- a/src/Umbraco.Web.UI.Client/src/views/partialviewmacros/create.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/partialviewmacros/create.controller.js @@ -1,14 +1,17 @@ (function () { "use strict"; - function PartialViewMacrosCreateController($scope, codefileResource, $location, navigationService) { + function PartialViewMacrosCreateController($scope, codefileResource, $location, navigationService, formHelper, localizationService) { var vm = this; var node = $scope.dialogOptions.currentNode; + var localizeCreateFolder = localizationService.localize("defaultdialog_createFolder"); vm.snippets = []; vm.showSnippets = false; vm.creatingFolder = false; + vm.createFolderError = ""; + vm.folderName = ""; vm.createPartialViewMacro = createPartialViewMacro; vm.showCreateFolder = showCreateFolder; @@ -39,8 +42,38 @@ vm.creatingFolder = true; } - function createFolder() { + function createFolder(form) { + if (formHelper.submitForm({scope: $scope, formCtrl: form, statusMessage: localizeCreateFolder})) { + codefileResource.createContainer("partialViewMacros", node.id, vm.folderName).then(function(path) { + + navigationService.hideMenu(); + + navigationService.syncTree({ + tree: "partialViewMacros", + path: path, + forceReload: true, + activate: true + }); + + formHelper.resetForm({ + scope: $scope + }); + + var section = appState.getSectionState("currentSection"); + + }, function(err) { + + vm.createFolderError = err; + + //show any notifications + if (angular.isArray(err.data.notifications)) { + for (var i = 0; i < err.data.notifications.length; i++) { + notificationsService.showNotification(err.data.notifications[i]); + } + } + }); + } } function showCreateFromSnippet() { diff --git a/src/Umbraco.Web.UI.Client/src/views/partialviewmacros/create.html b/src/Umbraco.Web.UI.Client/src/views/partialviewmacros/create.html index aa8796ae7a..0c5a74c4b0 100644 --- a/src/Umbraco.Web.UI.Client/src/views/partialviewmacros/create.html +++ b/src/Umbraco.Web.UI.Client/src/views/partialviewmacros/create.html @@ -47,12 +47,12 @@
+ ng-submit="vm.createFolder(createFolderForm)" + val-form-manager> -
-
{{error.errorMsg}}
-

{{error.data.message}}

+
+
{{vm.createFolderError.errorMsg}}
+

{{vm.createFolderError.data.message}}