From c630c5d952f3a363e20352a58bab8a51e9c99953 Mon Sep 17 00:00:00 2001 From: Paulo Reis Date: Wed, 4 Jul 2018 16:54:04 +0100 Subject: [PATCH] Preemptively remove front-end data when removing user emails. --- .../web/app/views/user/settings/user-affiliations.pug | 4 ++-- .../controllers/UserAffiliationsController.coffee | 11 +++++++---- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/services/web/app/views/user/settings/user-affiliations.pug b/services/web/app/views/user/settings/user-affiliations.pug index 3d12c5bfa2..24424b495c 100644 --- a/services/web/app/views/user/settings/user-affiliations.pug +++ b/services/web/app/views/user/settings/user-affiliations.pug @@ -59,13 +59,13 @@ form.row( a( href ng-if="!userEmail.default" - ng-click="setDefaultUserEmail(userEmail.email)" + ng-click="setDefaultUserEmail(userEmail)" ) Make default br a( href ng-if="!userEmail.default" - ng-click="removeUserEmail(userEmail.email)" + ng-click="removeUserEmail(userEmail)" ) Remove tr.affiliations-table-highlighted-row( ng-if="ui.isLoadingEmails" diff --git a/services/web/public/coffee/main/affiliations/controllers/UserAffiliationsController.coffee b/services/web/public/coffee/main/affiliations/controllers/UserAffiliationsController.coffee index f3ceca8e0d..d88a15e161 100644 --- a/services/web/public/coffee/main/affiliations/controllers/UserAffiliationsController.coffee +++ b/services/web/public/coffee/main/affiliations/controllers/UserAffiliationsController.coffee @@ -97,16 +97,19 @@ define [ _reset() _getUserEmails() - $scope.setDefaultUserEmail = (email) -> + $scope.setDefaultUserEmail = (userEmail) -> $scope.ui.isLoadingEmails = true UserAffiliationsDataService - .setDefaultUserEmail email + .setDefaultUserEmail userEmail.email .then () -> _getUserEmails() - $scope.removeUserEmail = (email) -> + $scope.removeUserEmail = (userEmail) -> $scope.ui.isLoadingEmails = true + userEmailIdx = _.indexOf $scope.userEmails, userEmail + if userEmailIdx > -1 + $scope.userEmails.splice userEmailIdx, 1 UserAffiliationsDataService - .removeUserEmail email + .removeUserEmail userEmail.email .then () -> _getUserEmails() _reset = () ->