fix satoshis to fiat format

This commit is contained in:
JDonadio 2017-11-15 17:23:26 -03:00
parent 83d0d0cf5d
commit b9b52842a5
No known key found for this signature in database
GPG Key ID: EC1F4E04B2BFA730
3 changed files with 15 additions and 10 deletions

View File

@ -2,6 +2,7 @@ import { BrowserModule } from '@angular/platform-browser';
import { ErrorHandler, NgModule, APP_INITIALIZER } from '@angular/core';
import { HttpClient, HttpClientModule } from '@angular/common/http';
import { IonicApp, IonicModule, IonicErrorHandler } from 'ionic-angular';
import { DecimalPipe } from '@angular/common';
/* Native modules */
import { AndroidFingerprintAuth } from '@ionic-native/android-fingerprint-auth';
@ -183,6 +184,7 @@ let providers: any = [
TxConfirmNotificationProvider,
TxFormatProvider,
WalletProvider,
DecimalPipe,
{
provide: ErrorHandler,
useClass: IonicErrorHandler

View File

@ -1,18 +1,23 @@
import { Pipe, PipeTransform } from '@angular/core';
import { TxFormatProvider } from '../providers/tx-format/tx-format';
import { ConfigProvider } from '../providers/config/config';
import { DecimalPipe } from '@angular/common';
@Pipe({ name: 'toFiat' })
export class ToFiatPipe implements PipeTransform {
private unitCode: string;
private alternativeIsoCode: string;
constructor(
private configProvider: ConfigProvider,
private txFormatProvider: TxFormatProvider
private txFormatProvider: TxFormatProvider,
private decimalPipe: DecimalPipe,
) {
this.unitCode = this.configProvider.get().wallet.settings.unitCode;
this.alternativeIsoCode = this.configProvider.get().wallet.settings.alternativeIsoCode;
}
transform(value: string, satoshis: number): any {
return this.txFormatProvider.formatAlternativeStr(this.unitCode, satoshis);
let amount = this.txFormatProvider.toFiat(this.unitCode, satoshis, this.alternativeIsoCode) || 0;
return this.decimalPipe.transform(amount, '1.2-2') + ' ' + this.alternativeIsoCode;
}
}

View File

@ -37,14 +37,12 @@ export class TxFormatProvider {
return (this.formatAmount(satoshis) + ' ' + coin.toUpperCase());
}
public toFiat(coin: string, satoshis: number, code: string): Promise<any> {
return new Promise((resolve, reject) => {
if (isNaN(satoshis)) return resolve();
var v1;
v1 = this.rate.toFiat(satoshis, code, coin);
if (!v1) return resolve(null);
return resolve(v1.toFixed(2));
});
public toFiat(coin: string, satoshis: number, code: string): number {
if (isNaN(satoshis)) return;
var v1;
v1 = this.rate.toFiat(satoshis, code, coin);
if (!v1) return null;
return v1.toFixed(2);
}
public formatToUSD(coin: string, satoshis: number): Promise<any> {