mirror of https://github.com/BTCPrivate/copay.git
Merge pull request #4390 from matiu/ref/profile-save
fixes credentials storage
This commit is contained in:
commit
8708958f98
|
@ -48,7 +48,7 @@ angular.module('copayApp.controllers').controller('preferencesController',
|
|||
|
||||
fc.setPrivateKeyEncryption(password);
|
||||
fc.lock();
|
||||
profileService.updateCredentials(fc.export(), function() {
|
||||
profileService.updateCredentials(JSON.parse(fc.export()), function() {
|
||||
$log.debug('Wallet encrypted');
|
||||
return cb();
|
||||
});
|
||||
|
@ -62,7 +62,7 @@ angular.module('copayApp.controllers').controller('preferencesController',
|
|||
} catch (e) {
|
||||
return cb(e);
|
||||
}
|
||||
profileService.updateCredentials(fc.export(), function() {
|
||||
profileService.updateCredentials(JSON.parse(fc.export()), function() {
|
||||
$log.debug('Wallet encryption disabled');
|
||||
return cb();
|
||||
});
|
||||
|
|
|
@ -74,6 +74,9 @@ Profile.prototype.setChecked = function(ua, walletId) {
|
|||
|
||||
|
||||
Profile.prototype.addWallet = function(credentials) {
|
||||
if (!credentials.walletId)
|
||||
throw 'credentials must have .walletId';
|
||||
|
||||
if (this.hasWallet(credentials.walletId))
|
||||
return false;
|
||||
|
||||
|
@ -83,14 +86,20 @@ Profile.prototype.addWallet = function(credentials) {
|
|||
};
|
||||
|
||||
Profile.prototype.updateWallet = function(credentials) {
|
||||
if (!credentials.walletId)
|
||||
throw 'credentials must have .walletId';
|
||||
|
||||
if (!this.hasWallet(credentials.walletId))
|
||||
return false;
|
||||
|
||||
this.credentials = this.credentials.filter(function(c) {
|
||||
return c.walletId != walletId;
|
||||
this.credentials = this.credentials.map(function(c) {
|
||||
if(c.walletId != credentials.walletId ) {
|
||||
return c;
|
||||
} else {
|
||||
return credentials
|
||||
}
|
||||
});
|
||||
|
||||
this.addWallet(credentials);
|
||||
this.dirty = true;
|
||||
return true;
|
||||
};
|
||||
|
|
|
@ -669,7 +669,7 @@ angular.module('copayApp.services')
|
|||
|
||||
root.setDisclaimerAccepted = function(cb) {
|
||||
root.profile.disclaimerAccepted = true;
|
||||
storageService.storeProfileThrottled(root.profile, function(err) {
|
||||
storageService.storeProfile(root.profile, function(err) {
|
||||
return cb(err);
|
||||
});
|
||||
};
|
||||
|
@ -692,7 +692,7 @@ angular.module('copayApp.services')
|
|||
|
||||
root.updateCredentials = function(credentials, cb) {
|
||||
root.profile.updateWallet(credentials);
|
||||
storageService.storeProfileThrottled(root.profile, cb);
|
||||
storageService.storeProfile(root.profile, cb);
|
||||
};
|
||||
|
||||
root.getClients = function() {
|
||||
|
|
|
@ -99,8 +99,6 @@ angular.module('copayApp.services')
|
|||
storage.set('profile', profile.toObj(), cb);
|
||||
};
|
||||
|
||||
root.storeProfileThrottled = lodash.throttle(root.storeProfile, 5000);
|
||||
|
||||
root.getProfile = function(cb) {
|
||||
storage.get('profile', function(err, str) {
|
||||
if (err || !str)
|
||||
|
|
Loading…
Reference in New Issue