better error handling of getTx

This commit is contained in:
Matias Alejo Garcia 2017-03-08 15:55:30 -03:00
commit c062232976
No known key found for this signature in database
GPG key ID: 02470DB551277AB3
2 changed files with 12 additions and 17 deletions

View file

@ -93,9 +93,9 @@ angular.module('copayApp.controllers').controller('txDetailsController', functio
walletService.getTx($scope.wallet, txId, function(err, tx) {
ongoingProcess.set('loadingTxInfo', false);
if (err) {
$log.warn('Could not get tx');
$log.warn('Error getting transaction' + err);
$ionicHistory.goBack();
return popupService.showAlert(gettextCatalog.getString('Error'), gettextCatalog.getString('Transaction not found'));
return popupService.showAlert(gettextCatalog.getString('Error'), gettextCatalog.getString('Transaction not available at this time'));
}
$scope.btx = txFormatService.processTx(tx);

View file

@ -523,32 +523,27 @@ angular.module('copayApp.services').factory('walletService', function($log, $tim
};
root.getTx = function(wallet, txid, cb) {
var tx;
if (wallet.completeHistory && wallet.completeHistory.isValid) {
tx = lodash.find(wallet.completeHistory, {
txid: txid
function finish(list){
var tx = lodash.find(list, {
txid: txid
});
finish();
if (!tx) return cb('Could not get transaction');
return cb(null, tx);
};
if (wallet.completeHistory && wallet.completeHistory.isValid) {
finish(wallet.completeHistory);
} else {
root.getTxHistory(wallet, {
limitTx: txid
}, function(err, txHistory) {
if (err) return cb(err);
tx = lodash.find(txHistory, {
txid: txid
});
finish();
finish(txHistory);
});
}
function finish() {
if (tx) return cb(null, tx);
else return cb();
};
};