diff --git a/src/Umbraco.Web.UI.Client/src/common/resources/member.resource.js b/src/Umbraco.Web.UI.Client/src/common/resources/member.resource.js index fa2a8efa27..bf726be952 100644 --- a/src/Umbraco.Web.UI.Client/src/common/resources/member.resource.js +++ b/src/Umbraco.Web.UI.Client/src/common/resources/member.resource.js @@ -81,7 +81,7 @@ function memberResource($q, $http, umbDataFormatter, umbRequestHelper) { $http.delete( umbRequestHelper.getApiUrl( "memberApiBaseUrl", - "DeleteById", + "DeleteByKey", [{ key: key }])), 'Failed to delete item ' + key); }, diff --git a/src/Umbraco.Web.UI.Client/src/views/member/member.delete.controller.js b/src/Umbraco.Web.UI.Client/src/views/member/member.delete.controller.js index 27d01f6a4a..dc86b21731 100644 --- a/src/Umbraco.Web.UI.Client/src/views/member/member.delete.controller.js +++ b/src/Umbraco.Web.UI.Client/src/views/member/member.delete.controller.js @@ -13,7 +13,7 @@ function MemberDeleteController($scope, memberResource, treeService, navigationS //mark it for deletion (used in the UI) $scope.currentNode.loading = true; - memberResource.deleteByLogin($scope.currentNode.id).then(function () { + memberResource.deleteByKey($scope.currentNode.id).then(function () { $scope.currentNode.loading = false; //TODO: Need to sync tree, etc... diff --git a/src/Umbraco.Web/Editors/MemberController.cs b/src/Umbraco.Web/Editors/MemberController.cs index 87403d8713..9ce07c1fa5 100644 --- a/src/Umbraco.Web/Editors/MemberController.cs +++ b/src/Umbraco.Web/Editors/MemberController.cs @@ -1,6 +1,8 @@ using System; using System.Collections.Generic; using System.Linq; +using System.Net; +using System.Net.Http; using System.Text; using System.Threading.Tasks; using System.Web.Http; @@ -135,5 +137,24 @@ namespace Umbraco.Web.Editors return display; } + + + /// + /// Permanently deletes a member + /// + /// + /// + public HttpResponseMessage DeleteByKey(Guid key) + { + var foundMember = Services.MemberService.GetByKey(key); + if (foundMember == null) + { + return HandleContentNotFound(key, false); + } + + Services.MemberService.Delete(foundMember); + + return Request.CreateResponse(HttpStatusCode.OK); + } } } diff --git a/src/Umbraco.Web/Trees/MemberTreeController.cs b/src/Umbraco.Web/Trees/MemberTreeController.cs index b127ae5808..081f7c8c33 100644 --- a/src/Umbraco.Web/Trees/MemberTreeController.cs +++ b/src/Umbraco.Web/Trees/MemberTreeController.cs @@ -85,6 +85,7 @@ namespace Umbraco.Web.Trees } menu.AddMenuItem(); + menu.AddMenuItem(true); return menu; } }