From 20c5ebafcc8563d6e2d1e35495344d7ea8dd862a Mon Sep 17 00:00:00 2001 From: poka Date: Wed, 8 Jun 2022 03:14:08 +0200 Subject: [PATCH] canPay: detect creations fees if needed; can't empty your own wallet --- lib/providers/wallet_options.dart | 2 +- lib/screens/transaction_in_progress.dart | 8 ++++---- lib/screens/wallet_view.dart | 12 +++++++++--- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/lib/providers/wallet_options.dart b/lib/providers/wallet_options.dart index 8a59d15..c73ff4a 100644 --- a/lib/providers/wallet_options.dart +++ b/lib/providers/wallet_options.dart @@ -73,7 +73,7 @@ class WalletOptionsProvider with ChangeNotifier { Provider.of(context, listen: false); final _defaultWallet = _myWalletProvider.getDefaultWallet(); log.d(_defaultWallet.address); - await _sub.pay( + _sub.pay( fromAddress: wallet.address!, destAddress: _defaultWallet.address!, amount: -1, diff --git a/lib/screens/transaction_in_progress.dart b/lib/screens/transaction_in_progress.dart index 5bff32d..858b3be 100644 --- a/lib/screens/transaction_in_progress.dart +++ b/lib/screens/transaction_in_progress.dart @@ -102,19 +102,19 @@ class TransactionInProgress extends StatelessWidget { case 'cert.NotRespectCertPeriod': case 'identity.CreatorNotAllowedToCreateIdty': { - _resultText += + _resultText = "Vous devez attendre 24h entre chaque certification"; } break; case 'cert.CannotCertifySelf': { - _resultText += + _resultText = "Vous ne pouvez pas vous certifier\nvous même ..."; } break; case 'identity.IdtyNameAlreadyExist': { - _resultText += "Ce nom est déjà pris"; + _resultText = "Ce nom est déjà pris"; } break; case 'balances.KeepAlive': @@ -129,12 +129,12 @@ class TransactionInProgress extends StatelessWidget { "Vous devez alimenter ce compte avant\nde pouvoir l'utiliser"; } break; + case 'timeout': { _resultText += "Le délais d'éxecution est dépassé"; } break; - default: { _resultText += "\n$_exception"; diff --git a/lib/screens/wallet_view.dart b/lib/screens/wallet_view.dart index 0a875ca..3c8b065 100644 --- a/lib/screens/wallet_view.dart +++ b/lib/screens/wallet_view.dart @@ -423,11 +423,16 @@ class WalletViewScreen extends StatelessWidget { return StatefulBuilder( builder: (BuildContext context, StateSetter setState) { if (_walletViewProvider.payAmount.text != '' && - double.parse(_walletViewProvider.payAmount.text) <= + (double.parse(_walletViewProvider.payAmount.text) + 2) <= double.parse( balanceCache[defaultWallet.address]!.split(' ')[0]) && _walletViewProvider.address != defaultWallet.address) { - canValidate = true; + if (balanceCache[pubkey] == '0.0 $currencyName' && + double.parse(_walletViewProvider.payAmount.text) < 5) { + canValidate = false; + } else { + canValidate = true; + } } else { canValidate = false; } @@ -736,7 +741,8 @@ class WalletViewScreen extends StatelessWidget { balance(context, pubkey!, 22), const SizedBox(height: 10), - _walletOptions.idtyStatus(context, pubkey!, isOwner: false, color: Colors.black), + _walletOptions.idtyStatus(context, pubkey!, + isOwner: false, color: Colors.black), getCerts(context, pubkey!, 14), // if (username == null &&