Update: Adds a Bitcoin Core Wallet setting which hides BTC wallets when disabled

This commit is contained in:
Sam Cheng Hung 2018-03-27 11:30:34 +09:00
commit 780951eb2f
12 changed files with 108 additions and 9 deletions

View file

@ -1,6 +1,6 @@
'use strict';
angular.module('copayApp.services').factory('configService', function(storageService, lodash, $log, $timeout, $rootScope, platformInfo) {
angular.module('copayApp.services').factory('configService', function(storageService, lodash, $log, $timeout, $rootScope, $injector, platformInfo) {
var root = {};
var isWindowsPhoneApp = platformInfo.isCordova && platformInfo.isWP;
@ -84,6 +84,10 @@ angular.module('copayApp.services').factory('configService', function(storageSer
enabled: true,
},
displayBitcoinCore: {
enabled: false,
},
hideNextSteps: {
enabled: isWindowsPhoneApp ? true : false,
},
@ -245,6 +249,18 @@ angular.module('copayApp.services').factory('configService', function(storageSer
return lodash.clone(defaultConfig);
};
root.checkIfConfigIsSet = function(key) {
return new Promise(function(resolve, reject) {
storageService.getConfig(function(err, localConfig) {
if (localConfig) {
configCache = JSON.parse(localConfig);
resolve(configCache.hasOwnProperty(key));
} else {
reject(false);
}
});
});
}
return root;
});

View file

@ -1037,5 +1037,29 @@ angular.module('copayApp.services')
return cb(null, txps, n);
};
root.initBitcoinCoreDisplay = function() {
configService.checkIfConfigIsSet('displayBitcoinCore').then(function(result) {
if (!result) {
var walletsBtc = root.getWallets({coin: 'btc'});
var totalBtc = 0;
walletsBtc.forEach( (value, key, index) => {
totalBtc += parseFloat(value.cachedBalance);
});
var enableDisplayBitcoinCore = totalBtc > 0 ? true : false;
var opts = {
displayBitcoinCore: {
enabled: enableDisplayBitcoinCore
}
};
configService.set(opts, function(err) {
if (err) $log.debug(err);
});
}
});
};
return root;
});