diff --git a/src/Umbraco.Web.UI.Client/src/common/services/editor.service.js b/src/Umbraco.Web.UI.Client/src/common/services/editor.service.js index 3eb341eea8..1331ddc7d1 100644 --- a/src/Umbraco.Web.UI.Client/src/common/services/editor.service.js +++ b/src/Umbraco.Web.UI.Client/src/common/services/editor.service.js @@ -203,6 +203,12 @@ open(editor); } + function nodePermissions(editor) { + editor.view = "views/common/infiniteeditors/nodepermissions/nodepermissions.html"; + editor.size = "small"; + open(editor); + } + function insertCodeSnippet(editor) { editor.view = "views/common/infiniteeditors/insertcodesnippet/insertcodesnippet.html"; editor.size = "small"; @@ -222,6 +228,7 @@ mediaTypeEditor: mediaTypeEditor, queryBuilder: queryBuilder, treePicker: treePicker, + nodePermissions: nodePermissions, insertCodeSnippet: insertCodeSnippet }; diff --git a/src/Umbraco.Web.UI.Client/src/views/common/overlays/nodepermissions/nodepermissions.controller.js b/src/Umbraco.Web.UI.Client/src/views/common/infiniteeditors/nodepermissions/nodepermissions.controller.js similarity index 52% rename from src/Umbraco.Web.UI.Client/src/views/common/overlays/nodepermissions/nodepermissions.controller.js rename to src/Umbraco.Web.UI.Client/src/views/common/infiniteeditors/nodepermissions/nodepermissions.controller.js index 68e1c4cd86..15802feed9 100644 --- a/src/Umbraco.Web.UI.Client/src/views/common/overlays/nodepermissions/nodepermissions.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/common/infiniteeditors/nodepermissions/nodepermissions.controller.js @@ -5,21 +5,34 @@ var vm = this; - function onInit() { + vm.submit = submit; + vm.close = close; + function onInit() { // set default title if(!$scope.model.title) { localizationService.localize("defaultdialogs_permissionsEdit").then(function(value){ $scope.model.title = value + " " + $scope.model.node.name; }); } - + } + + function submit() { + if($scope.model.submit) { + $scope.model.submit($scope.model); + } + } + + function close() { + if($scope.model.close) { + $scope.model.close(); + } } onInit(); } - angular.module("umbraco").controller("Umbraco.Overlays.NodePermissionsController", NodePermissionsController); + angular.module("umbraco").controller("Umbraco.Editors.NodePermissionsController", NodePermissionsController); })(); diff --git a/src/Umbraco.Web.UI.Client/src/views/common/infiniteeditors/nodepermissions/nodepermissions.html b/src/Umbraco.Web.UI.Client/src/views/common/infiniteeditors/nodepermissions/nodepermissions.html new file mode 100644 index 0000000000..d41fc862b7 --- /dev/null +++ b/src/Umbraco.Web.UI.Client/src/views/common/infiniteeditors/nodepermissions/nodepermissions.html @@ -0,0 +1,56 @@ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
diff --git a/src/Umbraco.Web.UI.Client/src/views/common/overlays/nodepermissions/nodepermissions.html b/src/Umbraco.Web.UI.Client/src/views/common/overlays/nodepermissions/nodepermissions.html deleted file mode 100644 index 7578266562..0000000000 --- a/src/Umbraco.Web.UI.Client/src/views/common/overlays/nodepermissions/nodepermissions.html +++ /dev/null @@ -1,12 +0,0 @@ -
- - - - -
diff --git a/src/Umbraco.Web.UI.Client/src/views/users/group.controller.js b/src/Umbraco.Web.UI.Client/src/views/users/group.controller.js index 4a364d7f9f..e282dbbb55 100644 --- a/src/Umbraco.Web.UI.Client/src/views/users/group.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/users/group.controller.js @@ -1,9 +1,10 @@ (function () { "use strict"; - function UserGroupEditController($scope, $location, $routeParams, userGroupsResource, localizationService, contentEditingHelper) { + function UserGroupEditController($scope, $location, $routeParams, userGroupsResource, localizationService, contentEditingHelper, editorService) { var vm = this; + var contentPickerOpen = false; vm.page = {}; vm.page.rootIcon = "icon-folder"; @@ -123,14 +124,12 @@ } function openContentPicker() { - vm.contentPicker = { + var contentPicker = { title: vm.labels.selectContentStartNode, - view: "treepicker", section: "content", treeAlias: "content", hideSubmitButton: true, hideHeader: false, - show: true, submit: function (model) { if (model.selection) { vm.userGroup.contentStartNode = model.selection[0]; @@ -139,26 +138,23 @@ vm.userGroup.contentStartNode.icon = "icon-folder"; } } - vm.contentPicker.show = false; - vm.contentPicker = null; + editorService.close(); }, - close: function (oldModel) { - vm.contentPicker.show = false; - vm.contentPicker = null; + close: function () { + editorService.close(); } }; + editorService.treePicker(contentPicker); } function openMediaPicker() { - vm.contentPicker = { + var mediaPicker = { title: vm.labels.selectMediaStartNode, - view: "treepicker", section: "media", treeAlias: "media", entityType: "media", hideSubmitButton: true, hideHeader: false, - show: true, submit: function (model) { if (model.selection) { vm.userGroup.mediaStartNode = model.selection[0]; @@ -167,14 +163,13 @@ vm.userGroup.mediaStartNode.icon = "icon-folder"; } } - vm.contentPicker.show = false; - vm.contentPicker = null; + editorService.close(); }, - close: function (oldModel) { - vm.contentPicker.show = false; - vm.contentPicker = null; + close: function () { + editorService.close(); } }; + editorService.treePicker(mediaPicker); } function openUserPicker() { @@ -216,13 +211,11 @@ } function openGranularPermissionsPicker() { - vm.contentPicker = { + var contentPicker = { title: vm.labels.selectNode, - view: "treepicker", section: "content", treeAlias: "content", hideSubmitButton: true, - show: true, submit: function (model) { if (model.selection) { var node = model.selection[0]; @@ -234,11 +227,12 @@ setPermissionsForNode(node); } }, - close: function (oldModel) { - vm.contentPicker.show = false; - vm.contentPicker = null; + close: function () { + editorService.close(); } }; + editorService.treePicker(contentPicker); + contentPickerOpen = true; } function setPermissionsForNode(node) { @@ -249,9 +243,7 @@ } vm.nodePermissions = { - view: "nodepermissions", node: node, - show: true, submit: function (model) { if (model && model.node && model.node.permissions) { @@ -271,20 +263,21 @@ } } - // close node permisssions overlay - vm.nodePermissions.show = false; - vm.nodePermissions = null; - // close content picker overlay - if(vm.contentPicker) { - vm.contentPicker.show = false; - vm.contentPicker = null; + editorService.close(); + + if(contentPickerOpen) { + editorService.close(); + contentPickerOpen = false; } + }, - close: function (oldModel) { - vm.nodePermissions.show = false; - vm.nodePermissions = null; + close: function () { + editorService.close(); } }; + + editorService.nodePermissions(vm.nodePermissions); + } function removeSelectedItem(index, selection) { diff --git a/src/Umbraco.Web.UI.Client/src/views/users/group.html b/src/Umbraco.Web.UI.Client/src/views/users/group.html index 408283b442..415d6c86f2 100644 --- a/src/Umbraco.Web.UI.Client/src/views/users/group.html +++ b/src/Umbraco.Web.UI.Client/src/views/users/group.html @@ -218,20 +218,6 @@ position="right"> - - - - - - - - - \ No newline at end of file