diff --git a/src/js/controllers/addresses.js b/src/js/controllers/addresses.js index 24129da76..303919044 100644 --- a/src/js/controllers/addresses.js +++ b/src/js/controllers/addresses.js @@ -1,11 +1,22 @@ 'use strict'; -angular.module('copayApp.controllers').controller('addressesController', function($scope, $stateParams, $timeout, $ionicScrollDelegate, ongoingProcess, lodash, profileService, walletService) { +angular.module('copayApp.controllers').controller('addressesController', function($scope, $stateParams, $timeout, $ionicScrollDelegate, configService, popupService, gettextCatalog, ongoingProcess, lodash, profileService, walletService) { var ADDRESS_LIMIT = 5; + var config; + var unitName; + var unitToSatoshi; + var satToUnit; + var unitDecimals; $scope.wallet = profileService.getWallet($stateParams.walletId); $scope.showInfo = false; $scope.$on("$ionicView.beforeEnter", function(event, data) { + config = configService.getSync().wallet.settings; + unitToSatoshi = config.unitToSatoshi; + satToUnit = 1 / unitToSatoshi; + unitName = config.unitName; + unitDecimals = config.unitDecimals; + // $scope.unusedAddresses = getUnusedAddreses(); No backend support TODO $scope.unusedAddresses = [{ createdOn: 1479138140, @@ -14,17 +25,17 @@ angular.module('copayApp.controllers').controller('addressesController', functio }]; ongoingProcess.set('extractingWalletInfo', true); - walletService.getMainAddresses($scope.wallet, ADDRESS_LIMIT, function(err, addresses) { + walletService.getBalance($scope.wallet, {}, function(err, resp) { ongoingProcess.set('extractingWalletInfo', false); - $scope.addresses = lodash.map(addresses, function(addr) { - return { - createdOn: addr.createdOn, - address: addr.address, - path: addr.path.replace(/^m/g, 'xpub') - }; - }); + if (err) { + return popupService.showAlert(gettextCatalog.getString('Error'), err); + } - console.log($scope.addresses); + $scope.addresses = lodash.slice(resp.byAddress, 0, ADDRESS_LIMIT); + lodash.each($scope.addresses, function(a) { + a.balanceStr = (a.amount * satToUnit).toFixed(unitDecimals) + ' ' + unitName; + }); + $scope.$digest(); }); }); diff --git a/src/js/services/walletService.js b/src/js/services/walletService.js index f9b898b2b..07efbb1b9 100644 --- a/src/js/services/walletService.js +++ b/src/js/services/walletService.js @@ -784,6 +784,13 @@ angular.module('copayApp.services').factory('walletService', function($log, $tim }); }; + root.getBalance = function(wallet, opts, cb) { + opts = opts || {}; + wallet.getBalance(opts, function(err, resp) { + return cb(err, resp); + }); + }; + root.getAddress = function(wallet, forceNew, cb) { storageService.getLastAddress(wallet.id, function(err, addr) { if (err) return cb(err); diff --git a/www/views/addresses.html b/www/views/addresses.html index a4be58d2a..2e3955897 100644 --- a/www/views/addresses.html +++ b/www/views/addresses.html @@ -25,10 +25,10 @@