Fix getTx info if it is not in cache

This commit is contained in:
Gustavo Maximiliano Cortez 2017-05-18 18:51:49 -03:00
commit 923eeb909d
No known key found for this signature in database
GPG key ID: 15EDAD8D9F2EB1AF
2 changed files with 6 additions and 4 deletions

View file

@ -20,7 +20,7 @@ angular.module('copayApp.controllers').controller('txDetailsController', functio
listeners = [
$rootScope.$on('bwsEvent', function(e, walletId, type, n) {
if (type == 'NewBlock' && n && n.data && n.data.network == 'livenet') {
updateTx({hideLoading: true});
updateTxDebounced({hideLoading: true});
}
})
];
@ -97,7 +97,7 @@ angular.module('copayApp.controllers').controller('txDetailsController', functio
walletService.getTx($scope.wallet, txId, function(err, tx) {
if (!opts.hideLoading) ongoingProcess.set('loadingTxInfo', false);
if (err) {
$log.warn('Error getting transaction' + err);
$log.warn('Error getting transaction: ' + err);
$ionicHistory.goBack();
return popupService.showAlert(gettextCatalog.getString('Error'), gettextCatalog.getString('Transaction not available at this time'));
}
@ -124,6 +124,8 @@ angular.module('copayApp.controllers').controller('txDetailsController', functio
});
});
};
var updateTxDebounced = lodash.debounce(updateTx, 5000);
$scope.showCommentPopup = function() {
var opts = {};

View file

@ -457,13 +457,13 @@ angular.module('copayApp.services').factory('walletService', function($log, $tim
// do not sync all history, just looking for a single TX.
if (opts.limitTx) {
foundLimitTx = lodash.find(newTxs, {
foundLimitTx = lodash.find(txsFromLocal, {
txid: opts.limitTx,
});
if (foundLimitTx) {
$log.debug('Found limitTX: ' + opts.limitTx);
return next(null, newTxs);
return next(null, [foundLimitTx]);
}
}
// </HACK>