From 441bb94e4b18eec5402955f20069ce391f15391d Mon Sep 17 00:00:00 2001 From: Gustavo Maximiliano Cortez Date: Wed, 4 Nov 2015 16:17:04 -0300 Subject: [PATCH 1/3] Adds limit to create addresses --- src/js/services/addressService.js | 12 ++++++++++-- src/js/services/bwsError.js | 3 +++ 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/js/services/addressService.js b/src/js/services/addressService.js index b0432d00a..69884ecde 100644 --- a/src/js/services/addressService.js +++ b/src/js/services/addressService.js @@ -1,7 +1,7 @@ 'use strict'; 'use strict'; angular.module('copayApp.services') - .factory('addressService', function(storageService, profileService, $log, $timeout, lodash, bwsError, gettext) { + .factory('addressService', function(storageService, profileService, $log, $timeout, lodash, bwsError, gettextCatalog) { var root = {}; @@ -28,13 +28,21 @@ angular.module('copayApp.services') client.createAddress(function(err, addr) { if (err) { + var prefix = gettextCatalog.getString('Could not create address'); if (err.error && err.error.match(/locked/gi)) { $log.debug(err.error); return $timeout(function() { root._createAddress(walletId, cb); }, 5000); + } else if (err.code && err.code == 'MAIN_ADDRESS_GAP_REACHED') { + prefix = gettextCatalog.getString('Limit of address generation reached'); + $log.warn(err.message); + client.getMainAddresses({reverse: true, limit : 1}, function(err, addr) { + if (err) return cb(err); + return cb(null, addr[0].address); + }); } - return bwsError.cb(err, gettext('Could not create address'), cb); + return bwsError.cb(err, prefix, cb); } return cb(null, addr.address); }); diff --git a/src/js/services/bwsError.js b/src/js/services/bwsError.js index 896914145..b6055925c 100644 --- a/src/js/services/bwsError.js +++ b/src/js/services/bwsError.js @@ -93,6 +93,9 @@ angular.module('copayApp.services') case 'INVALID_BACKUP': body = gettextCatalog.getString('Wallet seed is invalid'); break; + case 'MAIN_ADDRESS_GAP_REACHED': + body = gettextCatalog.getString('You cannot generate more until you register any activity'); + break; case 'ERROR': body = (err.message || err.error); From 435e8f54ab72e09eedddaf0b465a0df68a195644 Mon Sep 17 00:00:00 2001 From: Gustavo Maximiliano Cortez Date: Wed, 4 Nov 2015 16:47:58 -0300 Subject: [PATCH 2/3] Fix wording. Hide ":" if prefix does not exist --- src/js/services/addressService.js | 2 +- src/js/services/bwsError.js | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/js/services/addressService.js b/src/js/services/addressService.js index 69884ecde..0dd4a20d0 100644 --- a/src/js/services/addressService.js +++ b/src/js/services/addressService.js @@ -35,8 +35,8 @@ angular.module('copayApp.services') root._createAddress(walletId, cb); }, 5000); } else if (err.code && err.code == 'MAIN_ADDRESS_GAP_REACHED') { - prefix = gettextCatalog.getString('Limit of address generation reached'); $log.warn(err.message); + prefix = null; client.getMainAddresses({reverse: true, limit : 1}, function(err, addr) { if (err) return cb(err); return cb(null, addr[0].address); diff --git a/src/js/services/bwsError.js b/src/js/services/bwsError.js index b6055925c..4c26cef90 100644 --- a/src/js/services/bwsError.js +++ b/src/js/services/bwsError.js @@ -94,7 +94,7 @@ angular.module('copayApp.services') body = gettextCatalog.getString('Wallet seed is invalid'); break; case 'MAIN_ADDRESS_GAP_REACHED': - body = gettextCatalog.getString('You cannot generate more until you register any activity'); + body = gettextCatalog.getString('Empty addresses limit reached. New addresses cannot be generated.'); break; case 'ERROR': @@ -112,7 +112,7 @@ angular.module('copayApp.services') body = gettextCatalog.getString(err); } - var msg = prefix + ( body ? ': ' + body : ''); + var msg = prefix + ( body ? (prefix ? ': ' : '') + body : ''); return msg; }; From c1139baeaa01e418d2a70a8cbce04a9a90255c51 Mon Sep 17 00:00:00 2001 From: Gustavo Maximiliano Cortez Date: Tue, 10 Nov 2015 17:50:57 -0300 Subject: [PATCH 3/3] Updates to abwc-1.1.5 --- bower.json | 1 + 1 file changed, 1 insertion(+) diff --git a/bower.json b/bower.json index 45f6bf216..b3a3fd684 100644 --- a/bower.json +++ b/bower.json @@ -25,3 +25,4 @@ "trezor-connect": "~1.0.1" } } +