From a30845d686fd17e28547e2bbf4058fb4e08a285f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20Baz=C3=A1n?= Date: Mon, 14 Nov 2016 12:53:43 -0300 Subject: [PATCH 1/4] better error handler --- src/js/controllers/tab-home.js | 3 +++ src/js/controllers/walletDetails.js | 15 +++++++-------- src/js/services/walletService.js | 28 +--------------------------- www/views/tab-home.html | 1 + www/views/walletDetails.html | 3 ++- 5 files changed, 14 insertions(+), 36 deletions(-) diff --git a/src/js/controllers/tab-home.js b/src/js/controllers/tab-home.js index bf8443081..8a98724f9 100644 --- a/src/js/controllers/tab-home.js +++ b/src/js/controllers/tab-home.js @@ -178,8 +178,11 @@ angular.module('copayApp.controllers').controller('tabHomeController', lodash.each($scope.wallets, function(wallet) { walletService.getStatus(wallet, {}, function(err, status) { if (err) { + if (err === 'WALLET_NOT_REGISTERED') wallet.error = gettextCatalog.getString('Wallet not registered'); + else wallet.error = err; $log.error(err); } else { + wallet.error = null; wallet.status = status; } if (++j == i) { diff --git a/src/js/controllers/walletDetails.js b/src/js/controllers/walletDetails.js index f90361ec2..1aeb09fd1 100644 --- a/src/js/controllers/walletDetails.js +++ b/src/js/controllers/walletDetails.js @@ -46,7 +46,7 @@ angular.module('copayApp.controllers').controller('walletDetailsController', fun var updateStatus = function(force) { $scope.updatingStatus = true; - $scope.updateStatusError = false; + $scope.updateStatusError = null; $scope.walletNotRegistered = false; walletService.getStatus($scope.wallet, { @@ -57,18 +57,16 @@ angular.module('copayApp.controllers').controller('walletDetailsController', fun if (err === 'WALLET_NOT_REGISTERED') { $scope.walletNotRegistered = true; } else { - $scope.updateStatusError = true; + $scope.updateStatusError = err; } $scope.status = null; - return; + } else { + setPendingTxps(status.pendingTxps); + $scope.status = status; } - - setPendingTxps(status.pendingTxps); - - $scope.status = status; $timeout(function() { $scope.$apply(); - }, 1); + }); }); }; @@ -111,6 +109,7 @@ angular.module('copayApp.controllers').controller('walletDetailsController', fun if (err) return; $timeout(function() { walletService.startScan($scope.wallet, function() { + $scope.updateAll(); $scope.$apply(); }); }); diff --git a/src/js/services/walletService.js b/src/js/services/walletService.js index a2dea86dc..5acd3fbe6 100644 --- a/src/js/services/walletService.js +++ b/src/js/services/walletService.js @@ -67,32 +67,6 @@ angular.module('copayApp.services').factory('walletService', function($log, $tim }); }; - // TODO - // This handles errors from BWS/index which normally - // trigger from async events (like updates). - // Debounce function avoids multiple popups - var _handleError = function(err) { - $log.warn('wallet ERROR: ', err); - - $log.warn('TODO'); - return; // TODO!!! - if (err instanceof errors.NOT_AUTHORIZED) { - - console.log('[walletService.js.93] TODO NOT AUTH'); //TODO - // TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO TODO - wallet.notAuthorized = true; - $state.go('tabs.home'); - } else if (err instanceof errors.NOT_FOUND) { - popupService.showAlert(gettextCatalog.getString('Error'), gettextCatalog.getString('Could not access Wallet Service: Not found')); - } else { - var msg = "" - $rootScope.$emit('Local/ClientError', (err.error ? err.error : err)); - popupService.showAlert(gettextCatalog.getString('Error'), bwcError.msg(err, gettextCatalog.getString('Error at Wallet Service'))); - } - }; - root.handleError = lodash.debounce(_handleError, 1000); - - root.invalidateCache = function(wallet) { if (wallet.cachedStatus) wallet.cachedStatus.isValid = false; @@ -220,7 +194,7 @@ angular.module('copayApp.services').factory('walletService', function($log, $tim cache.totalBalanceStr = txFormatService.formatAmount(cache.totalBalanceSat) + ' ' + cache.unitName; cache.lockedBalanceStr = txFormatService.formatAmount(cache.lockedBalanceSat) + ' ' + cache.unitName; cache.availableBalanceStr = txFormatService.formatAmount(cache.availableBalanceSat) + ' ' + cache.unitName; - cache.pendingBalanceStr = txFormatService.formatAmount(cache.totalBalanceSat + (cache.pendingAmount === null? 0 : cache.pendingAmount)) + ' ' + cache.unitName; + cache.pendingBalanceStr = txFormatService.formatAmount(cache.totalBalanceSat + (cache.pendingAmount === null ? 0 : cache.pendingAmount)) + ' ' + cache.unitName; if (cache.pendingAmount !== null && cache.pendingAmount !== 0) { cache.pendingAmountStr = txFormatService.formatAmount(cache.pendingAmount) + ' ' + cache.unitName; diff --git a/www/views/tab-home.html b/www/views/tab-home.html index 73c5a6834..2585f0604 100644 --- a/www/views/tab-home.html +++ b/www/views/tab-home.html @@ -87,6 +87,7 @@ {{wallet.m}}-of-{{wallet.n}} + {{wallet.error}}  

diff --git a/www/views/walletDetails.html b/www/views/walletDetails.html index d9ee9e4ae..eda297003 100644 --- a/www/views/walletDetails.html +++ b/www/views/walletDetails.html @@ -22,7 +22,8 @@
- Tap to retry + {{updateStatusError}} + Tap to retry
From d07ca68916309364b6b55865451604429ad1f762 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20Baz=C3=A1n?= Date: Mon, 14 Nov 2016 14:17:10 -0300 Subject: [PATCH 2/4] fixes --- src/js/controllers/tab-home.js | 2 +- www/views/tab-home.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/js/controllers/tab-home.js b/src/js/controllers/tab-home.js index 8a98724f9..ea4179e3b 100644 --- a/src/js/controllers/tab-home.js +++ b/src/js/controllers/tab-home.js @@ -179,7 +179,7 @@ angular.module('copayApp.controllers').controller('tabHomeController', walletService.getStatus(wallet, {}, function(err, status) { if (err) { if (err === 'WALLET_NOT_REGISTERED') wallet.error = gettextCatalog.getString('Wallet not registered'); - else wallet.error = err; + else wallet.error = gettextCatalog.getString('Could not update');; $log.error(err); } else { wallet.error = null; diff --git a/www/views/tab-home.html b/www/views/tab-home.html index 2585f0604..c79dcf4c1 100644 --- a/www/views/tab-home.html +++ b/www/views/tab-home.html @@ -87,7 +87,7 @@ {{wallet.m}}-of-{{wallet.n}} - {{wallet.error}} + {{wallet.error}}  

From d1797ec4bb809a647e59c0bab8a808b035470064 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20Baz=C3=A1n?= Date: Mon, 14 Nov 2016 17:19:10 -0300 Subject: [PATCH 3/4] delete unused variables --- www/views/walletDetails.html | 36 ++++++------------------------------ 1 file changed, 6 insertions(+), 30 deletions(-) diff --git a/www/views/walletDetails.html b/www/views/walletDetails.html index eda297003..99e90a82d 100644 --- a/www/views/walletDetails.html +++ b/www/views/walletDetails.html @@ -19,7 +19,7 @@
-
+
{{updateStatusError}} @@ -31,13 +31,7 @@ Recreate
-
- Scan status finished with error -
Tap to retry -
- - -
+
{{status.totalBalanceStr}}
{{status.totalBalanceAlternative}} {{status.alternativeIsoCode}}
@@ -46,7 +40,7 @@
-
+
[Balance Hidden]
Tap and hold to show @@ -65,7 +59,7 @@
-
+
@@ -74,25 +68,6 @@
-
-
- - - WARNING: Wallet not registered - -
-
- This wallet is not registered at the given Bitcore Wallet Service (BWS). You can recreate it from the local information. -
-
- - Recreate - -
-
- -
Payment Proposals @@ -111,7 +86,7 @@
+ ng-show="!txHistory[0] && !updatingTxHistory && !txHistoryError && !updateStatusError" translate> No transactions yet
@@ -179,5 +154,6 @@ on-infinite="showMore()" distance="1%"> +
From cbcd01e4b806770255cd0bd3278bdace34a8ddce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gabriel=20Baz=C3=A1n?= Date: Mon, 14 Nov 2016 17:31:36 -0300 Subject: [PATCH 4/4] fixes --- www/views/tab-home.html | 2 +- www/views/walletDetails.html | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/www/views/tab-home.html b/www/views/tab-home.html index c79dcf4c1..82aca6db6 100644 --- a/www/views/tab-home.html +++ b/www/views/tab-home.html @@ -87,7 +87,7 @@ {{wallet.m}}-of-{{wallet.n}} - {{wallet.error}} + {{wallet.error}}  

diff --git a/www/views/walletDetails.html b/www/views/walletDetails.html index 99e90a82d..1e832e068 100644 --- a/www/views/walletDetails.html +++ b/www/views/walletDetails.html @@ -22,7 +22,7 @@
- {{updateStatusError}} + {{updateStatusError}} Tap to retry