canPay: detect creations fees if needed; can't empty your own wallet

This commit is contained in:
poka 2022-06-08 03:14:08 +02:00
parent 55f08dddd6
commit 20c5ebafcc
3 changed files with 14 additions and 8 deletions

View File

@ -73,7 +73,7 @@ class WalletOptionsProvider with ChangeNotifier {
Provider.of<MyWalletsProvider>(context, listen: false);
final _defaultWallet = _myWalletProvider.getDefaultWallet();
log.d(_defaultWallet.address);
await _sub.pay(
_sub.pay(
fromAddress: wallet.address!,
destAddress: _defaultWallet.address!,
amount: -1,

View File

@ -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";

View File

@ -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 &&