[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-taler-ios] 03/24: Fix KYC/Confirm
From: |
gnunet |
Subject: |
[taler-taler-ios] 03/24: Fix KYC/Confirm |
Date: |
Tue, 05 Dec 2023 16:25:59 +0100 |
This is an automated email from the git hooks/post-receive script.
marc-stibane pushed a commit to branch master
in repository taler-ios.
commit ecb2d78a4f11f8dc2e9386c165f47c4954a8aeea
Author: Marc Stibane <marc@taler.net>
AuthorDate: Sat Nov 25 07:45:08 2023 +0100
Fix KYC/Confirm
---
.../Views/Transactions/TransactionDetailView.swift | 89 +++++++++++++---------
1 file changed, 55 insertions(+), 34 deletions(-)
diff --git a/TalerWallet1/Views/Transactions/TransactionDetailView.swift
b/TalerWallet1/Views/Transactions/TransactionDetailView.swift
index 4dd575f..4338861 100644
--- a/TalerWallet1/Views/Transactions/TransactionDetailView.swift
+++ b/TalerWallet1/Views/Transactions/TransactionDetailView.swift
@@ -76,6 +76,8 @@ struct TransactionDetailView: View {
return true
}
}
+ } else { // no sheet but the details view -> reload
+ checkReload(notification, logStr)
}
return false
}
@@ -134,7 +136,7 @@ struct TransactionDetailView: View {
Text("Status: \(common.txState.major.localizedState)")
} .listRowSeparator(.automatic)
.accessibilityFont(.title)
- SwitchCase(transaction: $transaction, hasDone: doneAction !=
nil)
+ TypeDetail(transaction: $transaction, hasDone: doneAction !=
nil)
if transaction.isAbortable { if let abortAction {
TransactionButton(transactionId: common.transactionId,
@@ -192,10 +194,47 @@ struct TransactionDetailView: View {
//}
//
//extension TransactionDetail {
- struct SwitchCase: View {
+ struct KycButton: View {
+ let destination: URL
+ @AppStorage("iconOnly") var iconOnly: Bool = false
+
+ var body: some View {
+ VStack(alignment: .leading) { // Show Hint that User must pass
KYC on website
+ if !iconOnly {
+ Text("You need to pass a KYC procedure")
+ .fixedSize(horizontal: false, vertical: true) //
wrap in scrollview
+ .multilineTextAlignment(.leading) //
otherwise
+ .listRowSeparator(.hidden)
+ }
+ Link("Open KYC website", destination: destination)
+ .buttonStyle(TalerButtonStyle(type: .prominent, badge:
NEEDS_KYC))
+ .accessibilityHint("Will go to KYC website to confirm this
withdrawal.")
+ }
+ }
+ }
+
+ struct ConfirmationButton: View {
+ let destination: URL
+ @AppStorage("iconOnly") var iconOnly: Bool = false
+
+ var body: some View {
+ VStack(alignment: .leading) { // Show Hint that User should
Confirm on bank website
+ if !iconOnly {
+ Text("Waiting for bank confirmation")
+ .fixedSize(horizontal: false, vertical: true) //
wrap in scrollview
+ .multilineTextAlignment(.leading) //
otherwise
+ .listRowSeparator(.hidden)
+ }
+ Link("Confirm with bank", destination: destination)
+ .buttonStyle(TalerButtonStyle(type: .prominent, badge:
CONFIRM_BANK))
+ .accessibilityHint("Will go to bank website to confirm
this withdrawal.")
+ }
+ }
+ }
+
+ struct TypeDetail: View {
@Binding var transaction: Transaction
let hasDone: Bool
- @AppStorage("iconOnly") var iconOnly: Bool = false
var body: some View {
let common = transaction.common
@@ -209,43 +248,25 @@ struct TransactionDetailView: View {
case .withdrawal(let withdrawalTransaction):
let details = withdrawalTransaction.details
if pending {
+ if transaction.isPendingKYC {
+ if let kycUrl = common.kycUrl {
+ if let destination = URL(string: kycUrl) {
+ KycButton(destination: destination)
+ }
+ }
+ }
let withdrawalDetails = details.withdrawalDetails
switch withdrawalDetails.type {
case .manual: // "Make a wire
transfer of \(amount) to"
- if transaction.isPendingKYC {
- if let kycUrl = common.kycUrl {
- if let destination = URL(string:
kycUrl) {
- VStack(alignment: .leading) {
// Show Hint that User must pass KYC on website
- if !iconOnly {
- Text("You need to pass
a KYC procedure")
-
.fixedSize(horizontal: false, vertical: true) // wrap in scrollview
-
.multilineTextAlignment(.leading) // otherwise
-
.listRowSeparator(.hidden)
- }
- Link("Open KYC website",
destination: destination)
-
.buttonStyle(TalerButtonStyle(type: .prominent, badge: NEEDS_KYC))
-
.accessibilityHint("Will go to KYC website to confirm this withdrawal.")
- }
- }
- }
- }
ManualDetailsV(common: common, details:
withdrawalDetails)
case .bankIntegrated: // "Confirm with
bank"
- let confirmed =
withdrawalDetails.confirmed ?? false
- if !confirmed {
- if let confirmationUrl =
withdrawalDetails.bankConfirmationUrl {
- if let destination = URL(string:
confirmationUrl) {
- VStack(alignment: .leading) {
// Show Hint that User should Confirm on bank website
- if !iconOnly {
- Text("Waiting for bank
confirmation")
-
.fixedSize(horizontal: false, vertical: true) // wrap in scrollview
-
.multilineTextAlignment(.leading) // otherwise
-
.listRowSeparator(.hidden)
- }
- Link("Confirm with bank",
destination: destination)
-
.buttonStyle(TalerButtonStyle(type: .prominent, badge: CONFIRM_BANK))
-
.accessibilityHint("Will go to bank website to confirm this withdrawal.")
+ if !transaction.isPendingKYC {
// both should never happen, but...
+ let confirmed =
withdrawalDetails.confirmed ?? false
+ if !confirmed {
+ if let confirmationUrl =
withdrawalDetails.bankConfirmationUrl {
+ if let destination =
URL(string: confirmationUrl) {
+
ConfirmationButton(destination: destination)
}
}
}
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [taler-taler-ios] branch master updated (be6a335 -> 989c5ea), gnunet, 2023/12/05
- [taler-taler-ios] 03/24: Fix KYC/Confirm,
gnunet <=
- [taler-taler-ios] 05/24: Refund, gnunet, 2023/12/05
- [taler-taler-ios] 07/24: Only main title, gnunet, 2023/12/05
- [taler-taler-ios] 06/24: Exchange: ToS, gnunet, 2023/12/05
- [taler-taler-ios] 04/24: ViewThatFits, gnunet, 2023/12/05
- [taler-taler-ios] 02/24: New "flags", gnunet, 2023/12/05
- [taler-taler-ios] 09/24: cleanup, gnunet, 2023/12/05
- [taler-taler-ios] 23/24: shortcutAction, gnunet, 2023/12/05
- [taler-taler-ios] 01/24: Logging, gnunet, 2023/12/05
- [taler-taler-ios] 21/24: amountToTransfer, gnunet, 2023/12/05
- [taler-taler-ios] 08/24: talerURI only sent if valid, gnunet, 2023/12/05