Merge wallet-balance that includes formatted-amount

This commit is contained in:
Brendon Duncan 2018-08-10 13:56:48 +12:00
commit cb9feb99ce
3 changed files with 22 additions and 14 deletions

View file

@ -17,8 +17,7 @@
}
});
function walletBalanceController($log, $scope, $timeout, uxLanguage) {
console.log('walletBalanceController');
function walletBalanceController($log, $scope, txFormatService) {
var cryptoBalanceHasBeenDisplayed = false;
formatBalance();
@ -29,7 +28,7 @@
function displayCryptoBalance(wallet) {
console.log('displayCryptoBalance()');
if (wallet.status && wallet.status.totalBalanceStr) {
if (wallet.status && wallet.status.isValid && wallet.status.totalBalanceStr) {
setDisplay(wallet.status.totalBalanceStr, '');
cryptoBalanceHasBeenDisplayed = true;
return;
@ -40,7 +39,7 @@
return;
}
if (wallet.cachedStatus && wallet.cachedStatus.totalBalanceStr) {
if (wallet.cachedStatus && wallet.status.isValid && wallet.cachedStatus.totalBalanceStr) {
setDisplay(wallet.cachedStatus.totalBalanceStr, '');
return;
}
@ -50,13 +49,13 @@
function displayFiatBalance(wallet) {
var displayAmount = '';
if (wallet.status && wallet.status.alternativeBalanceAvailable) {
if (wallet.status && wallet.status.isValid && wallet.status.alternativeBalanceAvailable) {
displayAmount = wallet.status.totalBalanceAlternative + ' ' + wallet.status.alternativeIsoCode;
setDisplay(displayAmount, '');
return;
}
if (wallet.cachedStatus && wallet.cachedStatus.alternativeBalanceAvailable) {
if (wallet.cachedStatus && wallet.cachedStatus.isValid && wallet.cachedStatus.alternativeBalanceAvailable) {
displayAmount = wallet.cachedStatus.totalBalanceAlternative + ' ' + wallet.cachedStatus.alternativeIsoCode;
setDisplay(displayAmount, '');
return;
@ -66,27 +65,36 @@
}
function formatBalance() {
//console.log('formatBalance() with wallet:', $scope.wallet,);
console.log('formatBalance() with displayAsFiat: "' + $scope.displayAsFiat + '"');
var displayAsFiat = $scope.displayAsFiat === 'true';
var wallet = null;
try {
wallet = JSON.parse($scope.wallet);
} catch (e) {
$log.error('Error parsing wallet to display balance.', e);
$scope.displayAmount = '';
$scope.cachedBalanceUpdatedOn = '';
setDisplay('', '');
return;
}
if (!$scope.displayAsFiat || $scope.displayAsFiat && !cryptoBalanceHasBeenDisplayed) {
if (!displayAsFiat || displayAsFiat && !cryptoBalanceHasBeenDisplayed) {
displayCryptoBalance(wallet);
}
if ($scope.displayAsFiat) {
if (displayAsFiat) {
displayFiatBalance(wallet);
}
}
function getFiatBalance(wallet) {
if (!(wallet.status && wallet.status.isValid)) {
$log.warn('Abandoning call to get fiat balance, because no valid wallet status.');
return;
}
txFormatService.formatAlternativeStr(wallet.coin, wallet.status.totalBalanceSat, function onFormatAlernativeStr(formatted) {
if (formatted) {
setDisplay(formatted, '');
}
});
}
function setDisplay(amount, cachedBalanceUpdatedOn) {

View file

@ -1,3 +1,3 @@
<div class="wallet-balance-directive">
<span>{{displayAmount}}</span><span ng-if="age">{{&middot; (cachedBalanceUpdatedOn * 1000 | amTimeAgo)}}</span>
<formatted-amount value="{{displayAmount}}"></formatted-amount><span ng-if="age">{{&middot; (cachedBalanceUpdatedOn * 1000 | amTimeAgo)}}</span>
</div>

View file

@ -16,7 +16,7 @@
></div>
</i>
<h2>{{fromWallet.name}}</h2>
<wallet-balance display-as-fiat="{{displayBalanceAsFiat}}" wallet="{{fromWallet}}" total-balance-sat={{fromWallet.status.totalBalanceSat}}></wallet-balance>
<wallet-balance display-as-fiat={{displayBalanceAsFiat}} wallet={{fromWallet}} total-balance-sat={{fromWallet.status.totalBalanceSat}}></wallet-balance>
<!--<p ng-show="vm.origin.balanceAmount">{{vm.origin.balanceAmount}} {{vm.origin.balanceCurrency}}</p>-->
<!--<formatted-amount value="{{fromWallet.status.totalBalanceStr ? fromWallet.status.totalBalanceStr : ( fromWallet.cachedBalance ? fromWallet.cachedBalance + (fromWallet.cachedBalanceUpdatedOn ? ' &middot; ' + ( fromWallet.cachedBalanceUpdatedOn * 1000 | amTimeAgo) : '') : '' ) }}"></formatted-amount>-->
</div>