diff --git a/lib/constants.dart b/lib/constants.dart index 5a8d9b421c..d9ed302c34 100644 --- a/lib/constants.dart +++ b/lib/constants.dart @@ -19,7 +19,7 @@ const String kAppLargeTestUrl = 'https://testv5.invoicing.co'; const String kFlutterDemoUrl = 'https://demo.invoiceninja.com'; const String kReactDemoUrl = 'https://react.invoicing.co/demo'; const String kWhiteLabelUrl = - 'https://app.invoiceninja.com/buy_now/?account_key=AsFmBAeLXF0IKf7tmi0eiyZfmWW9hxMT&product_id=3'; + 'https://invoiceninja.invoicing.co/client/subscriptions/O5xe7Rwd7r/purchase?account_key=AsFmBAeLXF0IKf7tmi0eiyZfmWW9hxMT&product_id=3'; const String kPrivacyPolicyURL = 'https://www.invoiceninja.com/privacy-policy'; const String kTermsOfServiceURL = 'https://www.invoiceninja.com/terms'; const String kBankingURL = 'https://invoiceninja.com/banking'; diff --git a/lib/ui/bank_account/bank_account_list_item.dart b/lib/ui/bank_account/bank_account_list_item.dart index 46a0e1fe04..cda29d9758 100644 --- a/lib/ui/bank_account/bank_account_list_item.dart +++ b/lib/ui/bank_account/bank_account_list_item.dart @@ -83,8 +83,8 @@ class BankAccountListItem extends StatelessWidget { crossAxisAlignment: CrossAxisAlignment.start, children: [ Text(toTitleCase(bankAccount.type) + - (bankAccount.isDisconnected - ? ' • ${localization!.disconnected}' + (bankAccount.disabledUpstream + ? ' • ${localization!.disconnected.toUpperCase()}' : '')), EntityStateLabel(bankAccount), ], diff --git a/lib/ui/bank_account/view/bank_account_view.dart b/lib/ui/bank_account/view/bank_account_view.dart index d652cbe3f3..264a05388b 100644 --- a/lib/ui/bank_account/view/bank_account_view.dart +++ b/lib/ui/bank_account/view/bank_account_view.dart @@ -1,7 +1,9 @@ import 'package:flutter/material.dart'; -import 'package:invoiceninja_flutter/data/models/entities.dart'; +import 'package:invoiceninja_flutter/data/models/models.dart'; +import 'package:invoiceninja_flutter/redux/bank_account/bank_account_actions.dart'; import 'package:invoiceninja_flutter/redux/transaction/transaction_selectors.dart'; import 'package:invoiceninja_flutter/ui/app/FieldGrid.dart'; +import 'package:invoiceninja_flutter/ui/app/buttons/elevated_button.dart'; import 'package:invoiceninja_flutter/ui/app/entities/entity_list_tile.dart'; import 'package:invoiceninja_flutter/ui/app/entity_header.dart'; import 'package:invoiceninja_flutter/ui/app/lists/list_divider.dart'; @@ -9,6 +11,7 @@ import 'package:invoiceninja_flutter/ui/app/scrollable_listview.dart'; import 'package:invoiceninja_flutter/ui/bank_account/view/bank_account_view_vm.dart'; import 'package:invoiceninja_flutter/ui/app/view_scaffold.dart'; import 'package:invoiceninja_flutter/utils/formatting.dart'; +import 'package:invoiceninja_flutter/utils/icons.dart'; import 'package:invoiceninja_flutter/utils/localization.dart'; import 'package:invoiceninja_flutter/utils/strings.dart'; @@ -40,12 +43,27 @@ class _BankAccountViewState extends State { onBackPressed: () => viewModel.onBackPressed(), body: ScrollableListView( children: [ - if (bankAccount.isConnected) + if (bankAccount.isConnected) ...[ EntityHeader( entity: bankAccount, label: localization.balance, value: formatNumber(bankAccount.balance, context), ), + if (bankAccount.isDisconnected) ...[ + ListDivider(), + Padding( + padding: const EdgeInsets.only(left: 20, right: 20, bottom: 20), + child: AppButton( + label: localization.reconnect.toUpperCase(), + onPressed: () { + handleBankAccountAction( + context, [bankAccount], EntityAction.reconnect); + }, + iconData: getEntityActionIcon(EntityAction.reconnect), + ), + ), + ], + ], ListDivider(), EntitiesListTile( entity: bankAccount,