1
0
mirror of https://github.com/bitwarden/browser synced 2025-12-17 08:43:33 +00:00

recovery code

This commit is contained in:
Kyle Spearrin
2017-06-24 16:59:01 -04:00
parent 2f07d22a9e
commit 39281811f5
10 changed files with 142 additions and 8 deletions

View File

@@ -0,0 +1,44 @@
angular
.module('bit.settings')
.controller('settingsTwoStepRecoverController', function ($scope, apiService, $uibModalInstance, cryptoService,
$analytics) {
$analytics.eventTrack('settingsTwoStepRecoverController', { category: 'Modal' });
$scope.code = null;
$scope.auth = function (model) {
var masterPasswordHash = cryptoService.hashPassword(model.masterPassword);
$scope.authPromise = apiService.twoFactor.getRecover({}, {
masterPasswordHash: masterPasswordHash
}).$promise.then(function (apiResponse) {
$scope.code = formatString(apiResponse.Code);
$scope.authed = true;
});
};
$scope.print = function () {
if (!$scope.code) {
return;
}
$analytics.eventTrack('Print Recovery Code');
var w = window.open();
w.document.write('<div style="font-size: 18px; text-align: center;"><p>bitwarden two-step login recovery code:</p>' +
'<pre>' + $scope.code + '</pre></div><p style="text-align: center;">' + new Date() + '</p>');
w.print();
w.close();
};
function formatString(s) {
if (!s) {
return null;
}
return s.replace(/(.{4})/g, '$1 ').trim().toUpperCase();
}
$scope.close = function () {
$uibModalInstance.close();
};
});