From 119dcca961a8472e0b89df9507ea2b257166eefa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jes=C3=BAs=20Espino?= Date: Tue, 12 Aug 2014 17:44:57 +0200 Subject: [PATCH] On delete roles set correctly a new role value for all membershipsd --- app/coffee/modules/admin/project-values.coffee | 14 +++++++------- app/coffee/modules/admin/roles.coffee | 12 ++++++++++-- 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/app/coffee/modules/admin/project-values.coffee b/app/coffee/modules/admin/project-values.coffee index b7dc65cf..98fc4df9 100644 --- a/app/coffee/modules/admin/project-values.coffee +++ b/app/coffee/modules/admin/project-values.coffee @@ -229,13 +229,13 @@ ProjectValuesDirective = ($log, $repo, $confirm, $location) -> subtitle = value.name if _.keys(choices).length == 0 return $confirm.error("You can't delete all values.") - else - return $confirm.askChoice(title, subtitle, choices).then (selected) => - onSucces = -> - $ctrl.loadValues() - onError = -> - $confirm.notify("error") - $repo.remove(value, {"moveTo": selected}).then(onSucces, onError) + + return $confirm.askChoice(title, subtitle, choices).then (selected) => + onSucces = -> + $ctrl.loadValues() + onError = -> + $confirm.notify("error") + $repo.remove(value, {"moveTo": selected}).then(onSucces, onError) link = ($scope, $el, $attrs) -> linkDragAndDrop($scope, $el, $attrs) diff --git a/app/coffee/modules/admin/roles.coffee b/app/coffee/modules/admin/roles.coffee index 0dda53a2..07e33d69 100644 --- a/app/coffee/modules/admin/roles.coffee +++ b/app/coffee/modules/admin/roles.coffee @@ -88,8 +88,16 @@ class RolesController extends mixOf(taiga.Controller, taiga.PageMixin, taiga.Fil title = "Delete Role" subtitle = @scope.role.name - @confirm.ask(title, subtitle).then => - promise = @repo.remove(@scope.role) + choices = {} + for role in @scope.roles + if role.id != @scope.role.id + choices[role.id] = role.name + + if _.keys(choices).length == 0 + return @confirm.error("You can't delete all values.") + + return @confirm.askChoice(title, subtitle, choices).then (selected) => + promise = @repo.remove(@scope.role, {moveTo: selected}) promise.then => @confirm.notify('success') @.loadRoles()