+ * memberTypeResource.move({ parentId: 1244, id: 123 })
+ * .then(function() {
+ * alert("node was moved");
+ * }, function(err){
+ * alert("node didnt move:" + err.data.Message);
+ * });
+ *
+ * @param {Object} args arguments object
+ * @param {Int} args.id the ID of the node to move
+ * @param {Int} args.parentId the ID of the parent node to move to
+ * @returns {Promise} resourcePromise object.
+ *
+ */
+ move: function (args) {
+ if (!args) {
+ throw "args cannot be null";
+ }
+ if (!args.parentId) {
+ throw "args.parentId cannot be null";
+ }
+ if (!args.id) {
+ throw "args.id cannot be null";
+ }
+
+ return umbRequestHelper.resourcePromise(
+ $http.post(umbRequestHelper.getApiUrl("memberTypeApiBaseUrl", "PostMove"),
+ {
+ parentId: args.parentId,
+ id: args.id
+ }, { responseType: 'text' }),
+ 'Failed to move member type');
+ },
+
copy: function (args) {
if (!args) {
throw "args cannot be null";
@@ -141,6 +198,32 @@ function memberTypeResource($q, $http, umbRequestHelper, umbDataFormatter, local
id: args.id
}, { responseType: 'text' }),
promise);
+ },
+
+ createContainer: function (parentId, name) {
+
+ var promise = localizationService.localize("member_createFolderFailed", [parentId]);
+
+ return umbRequestHelper.resourcePromise(
+ $http.post(
+ umbRequestHelper.getApiUrl(
+ "memberTypeApiBaseUrl",
+ "PostCreateContainer",
+ { parentId: parentId, name: encodeURIComponent(name) })),
+ promise);
+ },
+
+ renameContainer: function (id, name) {
+
+ var promise = localizationService.localize("member_renameFolderFailed", [id]);
+
+ return umbRequestHelper.resourcePromise(
+ $http.post(umbRequestHelper.getApiUrl("memberTypeApiBaseUrl",
+ "PostRenameContainer",
+ { id: id, name: name })),
+ promise
+ );
+
}
};
}
diff --git a/src/Umbraco.Web.UI.Client/src/views/documentTypes/delete.controller.js b/src/Umbraco.Web.UI.Client/src/views/documentTypes/delete.controller.js
index f0c8a1825111..2fb1b62e506f 100644
--- a/src/Umbraco.Web.UI.Client/src/views/documentTypes/delete.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/documentTypes/delete.controller.js
@@ -6,7 +6,7 @@
* @description
* The controller for deleting content
*/
-function DocumentTypesDeleteController($scope, dataTypeResource, contentTypeResource, treeService, navigationService, localizationService) {
+function DocumentTypesDeleteController($scope, contentTypeResource, treeService, navigationService, localizationService) {
$scope.performDelete = function() {
@@ -51,7 +51,7 @@ function DocumentTypesDeleteController($scope, dataTypeResource, contentTypeReso
$scope.labels = {};
localizationService
.format(["contentTypeEditor_yesDelete", "contentTypeEditor_andAllDocuments"], "%0% " + $scope.currentNode.name + " %1%")
- .then(function (data) {
+ .then(data => {
$scope.labels.deleteConfirm = data;
});
}
diff --git a/src/Umbraco.Web.UI.Client/src/views/documentTypes/edit.controller.js b/src/Umbraco.Web.UI.Client/src/views/documentTypes/edit.controller.js
index d83cf350db97..2b95cc49b7f7 100644
--- a/src/Umbraco.Web.UI.Client/src/views/documentTypes/edit.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/documentTypes/edit.controller.js
@@ -200,11 +200,10 @@
vm.page.saveButtonState = "busy";
- localizationService.localize("modelsBuilder_buildingModels").then(function (headerValue) {
- localizationService.localize("modelsBuilder_waitingMessage").then(function (msgValue) {
- notificationsService.info(headerValue, msgValue);
- });
- });
+ localizationService.localizeMany(["modelsBuilder_buildingModels", "modelsBuilder_waitingMessage"])
+ .then(values => {
+ notificationsService.info(values[0], values[1]);
+ });
contentTypeHelper.generateModels().then(function (result) {
@@ -365,10 +364,9 @@
editorState.set($scope.content);
}
else {
- localizationService.localize("speechBubbles_validationFailedHeader").then(function (headerValue) {
- localizationService.localize("speechBubbles_validationFailedMessage").then(function (msgValue) {
- notificationsService.error(headerValue, msgValue);
- });
+ localizationService.localizeMany(["speechBubbles_validationFailedHeader", "speechBubbles_validationFailedMessage"])
+ .then(values => {
+ notificationsService.error(values[0], values[1]);
});
}
vm.page.saveButtonState = "error";
@@ -406,7 +404,7 @@
// convert icons for content type
convertLegacyIcons(contentType);
- //set a shared state
+ // set a shared state
editorState.set(contentType);
vm.contentType = contentType;
diff --git a/src/Umbraco.Web.UI.Client/src/views/documentTypes/move.controller.js b/src/Umbraco.Web.UI.Client/src/views/documentTypes/move.controller.js
index e63656cee3d7..3888af62ecdd 100644
--- a/src/Umbraco.Web.UI.Client/src/views/documentTypes/move.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/documentTypes/move.controller.js
@@ -1,6 +1,6 @@
angular.module("umbraco")
.controller("Umbraco.Editors.DocumentTypes.MoveController",
- function ($scope, contentTypeResource, treeService, navigationService, notificationsService, appState, eventsService) {
+ function ($scope, contentTypeResource, treeService, navigationService, appState, eventsService) {
$scope.dialogTreeApi = {};
$scope.source = _.clone($scope.currentNode);
diff --git a/src/Umbraco.Web.UI.Client/src/views/mediaTypes/create.controller.js b/src/Umbraco.Web.UI.Client/src/views/mediaTypes/create.controller.js
index 435ece4bb9cd..37cf611a8501 100644
--- a/src/Umbraco.Web.UI.Client/src/views/mediaTypes/create.controller.js
+++ b/src/Umbraco.Web.UI.Client/src/views/mediaTypes/create.controller.js
@@ -6,14 +6,16 @@
* @description
* The controller for the media type creation dialog
*/
-function MediaTypesCreateController($scope, $location, navigationService, mediaTypeResource, formHelper, appState, localizationService) {
+function MediaTypesCreateController($scope, $location, navigationService, mediaTypeResource, formHelper, appState) {
$scope.model = {
- folderName: "",
- creatingFolder: false
+ allowCreateFolder: $scope.currentNode.parentId === null || $scope.currentNode.nodeType === 'container',
+ folderName: "",
+ creatingFolder: false
};
var node = $scope.currentNode;
+ var section = appState.getSectionState("currentSection");
$scope.showCreateFolder = function() {
$scope.model.creatingFolder = true;
@@ -32,9 +34,7 @@ function MediaTypesCreateController($scope, $location, navigationService, mediaT
formHelper.resetForm({ scope: $scope, formCtrl: $scope.createFolderForm });
- var section = appState.getSectionState("currentSection");
-
- }, function (err) {
+ }, function(err) {
formHelper.resetForm({ scope: $scope, formCtrl: $scope.createFolderForm, hasErrors: true });
$scope.error = err;
});
@@ -43,7 +43,7 @@ function MediaTypesCreateController($scope, $location, navigationService, mediaT
$scope.createMediaType = function() {
$location.search('create', null);
- $location.path("/settings/mediaTypes/edit/" + node.id).search("create", "true");
+ $location.path("/" + section + "/mediaTypes/edit/" + node.id).search("create", "true");
navigationService.hideMenu();
};
diff --git a/src/Umbraco.Web.UI.Client/src/views/mediaTypes/create.html b/src/Umbraco.Web.UI.Client/src/views/mediaTypes/create.html
index bd6ef087f4a5..097f4fee1bed 100644
--- a/src/Umbraco.Web.UI.Client/src/views/mediaTypes/create.html
+++ b/src/Umbraco.Web.UI.Client/src/views/mediaTypes/create.html
@@ -10,20 +10,21 @@
-
-
+