complete passphrase verification - add spinner
This commit is contained in:
parent
4d94121ec6
commit
75707b4a93
5 changed files with 41 additions and 6 deletions
|
|
@ -12,20 +12,33 @@
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="onGoingProcess" ng-show="backupPassphraseC.checkingPassphrase">
|
||||||
|
<div class="onGoingProcess-content" ng-style="{'background-color':index.backgroundColor}">
|
||||||
|
<div class="spinner">
|
||||||
|
<div class="rect1"></div>
|
||||||
|
<div class="rect2"></div>
|
||||||
|
<div class="rect3"></div>
|
||||||
|
<div class="rect4"></div>
|
||||||
|
<div class="rect5"></div>
|
||||||
|
</div>
|
||||||
|
<span translate>Verifying passphrase...</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div ng-show="backupPassphraseC.mnemonicWords || (backupPassphraseC.credentialsEncrypted && !backupPassphraseC.deleted)">
|
<div ng-show="backupPassphraseC.mnemonicWords || (backupPassphraseC.credentialsEncrypted && !backupPassphraseC.deleted)">
|
||||||
<div class="row m10t m10b panel">
|
<div class="row m10t m10b panel">
|
||||||
<div class="small-centered text-gray columns size-14 text-center" translate>
|
<div class="small-centered text-gray columns size-14 text-center" translate>
|
||||||
Passphrase needed
|
Passphrase needed
|
||||||
</div>
|
</div>
|
||||||
<div class="columns size-14 m20t">
|
<div class="columns size-14 m20t">
|
||||||
<input type="text" id="passphrase" ng-model="passphrase" autofocus/>
|
<input type="text" id="passphrase" ng-model="passphrase" autocapitalize="off" spellcheck="false" ng-keypress="backupPassphraseC.changePassphrase()" autofocus/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="columns text-center m20t">
|
<div class="columns text-center m20t">
|
||||||
<button
|
<button
|
||||||
ng-show="!backupPassphraseC.passphraseSuccess"
|
ng-show="!backupPassphraseC.passphraseSuccess"
|
||||||
ng-disabled="!passphrase || backupPassphraseC.error"
|
ng-disabled="!passphrase"
|
||||||
ng-style="{'background-color':index.backgroundColor}"
|
ng-style="{'background-color':index.backgroundColor}"
|
||||||
class="button black round expand"
|
class="button black round expand"
|
||||||
ng-click="backupPassphraseC.confirm()"
|
ng-click="backupPassphraseC.confirm()"
|
||||||
|
|
|
||||||
|
|
@ -22,7 +22,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="p10" style="background:white" ng-class="{'enable_text_select': index.network == 'testnet'}">
|
<div class="p10" style="background:white" ng-class="{'enable_text_select': index.network == 'testnet'}">
|
||||||
<span ng-repeat="word in backupWordsC.mnemonicWords track by $index">
|
<span ng-repeat="word in backupWordsC.mnemonicWords track by $index">
|
||||||
<button class="button radius tiny" style="white-space:nowrap" ng-click="backupWordsC.disableButton(word)" id="{{word}}">{{word}}</button>
|
<button class="button radius tiny" ng-style="{'background-color':index.backgroundColor}" ng-click="backupWordsC.disableButton(word)" id="{{word}}">{{word}}</button>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,8 @@ angular.module('copayApp.controllers').controller('backupWordsController',
|
||||||
}
|
}
|
||||||
|
|
||||||
self.addButton = function(word) {
|
self.addButton = function(word) {
|
||||||
var btnhtml = '<button class="button radius tiny" style="white-space:nowrap" ' +
|
var btnhtml = '<button class="button radius tiny"' +
|
||||||
|
'ng-style="{\'background-color\':index.backgroundColor}"' +
|
||||||
'data-ng-click="backupWordsC.removeButton($event)" id="_' + word + '" > ' + word + ' </button>';
|
'data-ng-click="backupWordsC.removeButton($event)" id="_' + word + '" > ' + word + ' </button>';
|
||||||
var temp = $compile(btnhtml)($scope);
|
var temp = $compile(btnhtml)($scope);
|
||||||
angular.element(document.getElementById('addWord')).append(temp);
|
angular.element(document.getElementById('addWord')).append(temp);
|
||||||
|
|
|
||||||
|
|
@ -39,7 +39,6 @@ angular.module('copayApp.controllers').controller('backupController',
|
||||||
|
|
||||||
self.credentialsEncrypted = false;
|
self.credentialsEncrypted = false;
|
||||||
setWords(fc.getMnemonic());
|
setWords(fc.getMnemonic());
|
||||||
// $rootScope.$emit('Local/BackupDone');
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,11 +6,19 @@ angular.module('copayApp.controllers').controller('backupPassphraseController',
|
||||||
var self = this;
|
var self = this;
|
||||||
var fc = profileService.focusedClient;
|
var fc = profileService.focusedClient;
|
||||||
self.passphraseSuccess = false;
|
self.passphraseSuccess = false;
|
||||||
|
self.checkingPassphrase = false;
|
||||||
self.error = "";
|
self.error = "";
|
||||||
|
|
||||||
setWords(fc.getMnemonic());
|
setWords(fc.getMnemonic());
|
||||||
var words = fc.getMnemonic();
|
var words = fc.getMnemonic();
|
||||||
|
|
||||||
|
self.changePassphrase = function() {
|
||||||
|
self.passphraseSuccess = false;
|
||||||
|
$timeout(function() {
|
||||||
|
$rootScope.$apply();
|
||||||
|
}, 1);
|
||||||
|
}
|
||||||
|
|
||||||
function setWords(words) {
|
function setWords(words) {
|
||||||
if (words) {
|
if (words) {
|
||||||
self.mnemonicWords = words.split(/[\u3000\s]+/);
|
self.mnemonicWords = words.split(/[\u3000\s]+/);
|
||||||
|
|
@ -20,6 +28,9 @@ angular.module('copayApp.controllers').controller('backupPassphraseController',
|
||||||
};
|
};
|
||||||
|
|
||||||
self.confirm = function() {
|
self.confirm = function() {
|
||||||
|
self.checkingPassphrase = true;
|
||||||
|
self.error = "";
|
||||||
|
|
||||||
var walletClient = bwcService.getClient();
|
var walletClient = bwcService.getClient();
|
||||||
|
|
||||||
walletClient.importFromMnemonic(words, {
|
walletClient.importFromMnemonic(words, {
|
||||||
|
|
@ -27,8 +38,19 @@ angular.module('copayApp.controllers').controller('backupPassphraseController',
|
||||||
passphrase: $scope.passphrase,
|
passphrase: $scope.passphrase,
|
||||||
account: 0,
|
account: 0,
|
||||||
}, function(err) {
|
}, function(err) {
|
||||||
if (err)
|
self.checkingPassphrase = false;
|
||||||
|
if (err) {
|
||||||
self.error = err.message;
|
self.error = err.message;
|
||||||
|
$timeout(function() {
|
||||||
|
$rootScope.$apply();
|
||||||
|
}, 1);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
self.passphraseSuccess = true;
|
||||||
|
$timeout(function() {
|
||||||
|
$rootScope.$apply();
|
||||||
|
}, 1);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue