Add 2FA disable button in password reset dialog

This commit is contained in:
Johannes Zellner
2021-04-15 10:54:55 +02:00
parent d0f0dc7339
commit 737b9fb73e
3 changed files with 28 additions and 4 deletions
+2 -1
View File
@@ -317,7 +317,7 @@
</div>
</div>
<!-- Modal invite -->
<!-- Modal invite/reset -->
<div class="modal fade" id="invitationModal" tabindex="-1" role="dialog">
<div class="modal-dialog">
<div class="modal-content">
@@ -335,6 +335,7 @@
<br/>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-danger pull-left" ng-click="invitation.reset2FA()" ng-disabled="!invitation.user.twoFactorAuthenticationEnabled || invitation.reset2FABusy"><i class="fa fa-circle-notch fa-spin" ng-show="invitation.reset2FABusy"></i> {{ 'users.passwordResetDialog.disable2FAAction' | tr }}</button>
<button type="button" class="btn btn-default" data-dismiss="modal">{{ 'main.dialog.cancel' | tr }}</button>
<button type="button" class="btn btn-success" ng-click="invitation.email()" ng-disabled="invitation.busy"><i class="fa fa-circle-notch fa-spin" ng-show="invitation.busy"></i> {{ 'users.passwordResetDialog.sendEmailLinkAction' | tr }}</button>
</div>
+16
View File
@@ -525,6 +525,7 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio
$scope.invitation = {
busy: false,
reset2FABusy: false,
setupLink: '',
user: null,
@@ -532,6 +533,7 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio
$scope.invitation.user = user;
$scope.invitation.setupLink = '';
$scope.invitation.busy = false;
$scope.invitation.reset2FABusy = false;
Client.createInvite(user.id, function (error, result) {
if (error) return console.error(error);
@@ -548,6 +550,20 @@ angular.module('Application').controller('UsersController', ['$scope', '$locatio
Client.sendInvite($scope.invitation.user.id, function (error) {
$scope.invitation.busy = false;
if (error) return console.error(error);
$('#invitationModal').modal('hide');
});
},
reset2FA: function () {
$scope.invitation.reset2FABusy = true;
Client.disableTwoFactorAuthenticationByUserId($scope.invitation.user.id, function (error) {
$scope.invitation.reset2FABusy = false;
if (error) return console.error(error);
// ensure to update changed user state
refreshUsers();
$('#invitationModal').modal('hide');
});
}