Remove email from bank accounts and fasterpayment

This commit is contained in:
Manfred Karrer 2017-07-15 23:09:13 +02:00
parent f8ed97cb2e
commit 04fa5f079f
14 changed files with 29 additions and 121 deletions

View file

@ -1463,7 +1463,9 @@ payment.restore.default=No, restore default currency
payment.email=Email: payment.email=Email:
payment.country=Country: payment.country=Country:
payment.extras=Extra requirements: payment.extras=Extra requirements:
payment.us.info=Bank transfer with WIRE or ACH is not supported for the US because WIRE is too expensive and ACH has a high chargeback risk.\n\nPlease use payment methods \"Zelle (ClearXchange)\", \"US Postal Money Order\" or \"Cash Deposit\" instead. payment.us.info=Bank transfer with WIRE or ACH is not supported for the US because WIRE is too expensive and ACH has a high chargeback risk.\n\n\
Please use one of the available payment methods for the US like: \
\"Zelle (ClearXchange)\", \"Chase QuickPay\", \"US Postal Money Order\" or \"Cash Deposit\".
payment.email.mobile=Email or mobile no.: payment.email.mobile=Email or mobile no.:
payment.altcoin.address=Altcoin address: payment.altcoin.address=Altcoin address:
payment.altcoin=Altcoin: payment.altcoin=Altcoin:
@ -1513,7 +1515,7 @@ before starting a trade or creating an offer.\n\n\
\t● Frost Send Money\n\ \t● Frost Send Money\n\
\t● U.S. Bank Send Money\n\ \t● U.S. Bank Send Money\n\
\t● Wells Fargo SurePay\n\n\ \t● Wells Fargo SurePay\n\n\
3. You need to be sure to not exceed the daily or monthly transfer limits. Check with your bank what are the limits.\n\n\ 3. You need to be sure to not exceed the daily or monthly Zelle (ClearXchange) transfer limits.\n\n\
Please use Zelle (ClearXchange) only if you fulfill all those requirements, \ Please use Zelle (ClearXchange) only if you fulfill all those requirements, \
otherwise it is very likely that the Zelle (ClearXchange) transfer fails and the trade ends up in a dispute.\n\ otherwise it is very likely that the Zelle (ClearXchange) transfer fails and the trade ends up in a dispute.\n\
If you have not fulfilled the above requirements you would lose your security deposit in such a case.\n\n\ If you have not fulfilled the above requirements you would lose your security deposit in such a case.\n\n\

View file

@ -50,12 +50,4 @@ public final class FasterPaymentsAccount extends PaymentAccount {
public String getAccountNr() { public String getAccountNr() {
return ((FasterPaymentsAccountPayload) paymentAccountPayload).getAccountNr(); return ((FasterPaymentsAccountPayload) paymentAccountPayload).getAccountNr();
} }
public void setEmail(String value) {
((FasterPaymentsAccountPayload) paymentAccountPayload).setEmail(value);
}
public String getEmail() {
return ((FasterPaymentsAccountPayload) paymentAccountPayload).getEmail();
}
} }

View file

@ -43,12 +43,4 @@ public final class NationalBankAccount extends CountryBasedPaymentAccount implem
public String getCountryCode() { public String getCountryCode() {
return getCountry() != null ? getCountry().code : ""; return getCountry() != null ? getCountry().code : "";
} }
public void setEmail(String value) {
((BankAccountPayload) paymentAccountPayload).setEmail(value);
}
public String getEmail() {
return ((BankAccountPayload) paymentAccountPayload).getEmail();
}
} }

View file

@ -43,12 +43,4 @@ public final class SameBankAccount extends CountryBasedPaymentAccount implements
public String getCountryCode() { public String getCountryCode() {
return getCountry() != null ? getCountry().code : ""; return getCountry() != null ? getCountry().code : "";
} }
public void setEmail(String value) {
((BankAccountPayload) paymentAccountPayload).setEmail(value);
}
public String getEmail() {
return ((BankAccountPayload) paymentAccountPayload).getEmail();
}
} }

View file

@ -17,7 +17,6 @@
package io.bisq.core.payment; package io.bisq.core.payment;
import io.bisq.core.payment.payload.BankAccountPayload;
import io.bisq.core.payment.payload.PaymentAccountPayload; import io.bisq.core.payment.payload.PaymentAccountPayload;
import io.bisq.core.payment.payload.PaymentMethod; import io.bisq.core.payment.payload.PaymentMethod;
import io.bisq.core.payment.payload.SpecificBanksAccountPayload; import io.bisq.core.payment.payload.SpecificBanksAccountPayload;
@ -49,12 +48,4 @@ public final class SpecificBanksAccount extends CountryBasedPaymentAccount imple
public String getCountryCode() { public String getCountryCode() {
return getCountry() != null ? getCountry().code : ""; return getCountry() != null ? getCountry().code : "";
} }
public void setEmail(String value) {
((BankAccountPayload) paymentAccountPayload).setEmail(value);
}
public String getEmail() {
return ((BankAccountPayload) paymentAccountPayload).getEmail();
}
} }

View file

@ -19,7 +19,6 @@ package io.bisq.core.payment.payload;
import io.bisq.common.locale.BankUtil; import io.bisq.common.locale.BankUtil;
import io.bisq.common.locale.CountryUtil; import io.bisq.common.locale.CountryUtil;
import io.bisq.common.locale.Res;
import io.bisq.generated.protobuffer.PB; import io.bisq.generated.protobuffer.PB;
import lombok.EqualsAndHashCode; import lombok.EqualsAndHashCode;
import lombok.Getter; import lombok.Getter;
@ -49,8 +48,6 @@ public abstract class BankAccountPayload extends CountryBasedPaymentAccountPaylo
protected String holderTaxId; protected String holderTaxId;
@Nullable @Nullable
protected String bankId; protected String bankId;
@Nullable
protected String email;
public BankAccountPayload(String paymentMethod, String id, long maxTradePeriod) { public BankAccountPayload(String paymentMethod, String id, long maxTradePeriod) {
super(paymentMethod, id, maxTradePeriod); super(paymentMethod, id, maxTradePeriod);
@ -71,8 +68,7 @@ public abstract class BankAccountPayload extends CountryBasedPaymentAccountPaylo
String accountNr, String accountNr,
String accountType, String accountType,
String holderTaxId, String holderTaxId,
String bankId, String bankId) {
String email) {
super(paymentMethodName, id, maxTradePeriod, countryCode); super(paymentMethodName, id, maxTradePeriod, countryCode);
this.holderName = holderName; this.holderName = holderName;
this.bankName = bankName; this.bankName = bankName;
@ -81,7 +77,6 @@ public abstract class BankAccountPayload extends CountryBasedPaymentAccountPaylo
this.accountType = accountType; this.accountType = accountType;
this.holderTaxId = holderTaxId; this.holderTaxId = holderTaxId;
this.bankId = bankId; this.bankId = bankId;
this.email = email;
} }
@Override @Override
@ -95,7 +90,6 @@ public abstract class BankAccountPayload extends CountryBasedPaymentAccountPaylo
Optional.ofNullable(accountNr).ifPresent(builder::setAccountNr); Optional.ofNullable(accountNr).ifPresent(builder::setAccountNr);
Optional.ofNullable(accountType).ifPresent(builder::setAccountType); Optional.ofNullable(accountType).ifPresent(builder::setAccountType);
Optional.ofNullable(bankId).ifPresent(builder::setBankId); Optional.ofNullable(bankId).ifPresent(builder::setBankId);
Optional.ofNullable(email).ifPresent(builder::setEmail);
final PB.CountryBasedPaymentAccountPayload.Builder countryBasedPaymentAccountPayloadBuilder = super.getPaymentAccountPayloadBuilder() final PB.CountryBasedPaymentAccountPayload.Builder countryBasedPaymentAccountPayloadBuilder = super.getPaymentAccountPayloadBuilder()
.getCountryBasedPaymentAccountPayloadBuilder() .getCountryBasedPaymentAccountPayloadBuilder()
.setBankAccountPayload(builder); .setBankAccountPayload(builder);
@ -123,11 +117,8 @@ public abstract class BankAccountPayload extends CountryBasedPaymentAccountPaylo
BankUtil.getAccountTypeLabel(countryCode) + " " + this.accountType + "\n" : ""; BankUtil.getAccountTypeLabel(countryCode) + " " + this.accountType + "\n" : "";
String holderIdString = BankUtil.isHolderIdRequired(countryCode) ? String holderIdString = BankUtil.isHolderIdRequired(countryCode) ?
(BankUtil.getHolderIdLabel(countryCode) + " " + holderTaxId + "\n") : ""; (BankUtil.getHolderIdLabel(countryCode) + " " + holderTaxId + "\n") : "";
String emailString = email != null ?
(Res.get("payment.email") + " " + email + "\n") : "";
return "Holder name: " + holderName + "\n" + return "Holder name: " + holderName + "\n" +
emailString +
bankName + bankName +
bankId + bankId +
branchId + branchId +

View file

@ -78,7 +78,7 @@ public final class ClearXchangeAccountPayload extends PaymentAccountPayload {
@Override @Override
public String getPaymentDetails() { public String getPaymentDetails() {
return "Zelle (ClearXchange) - Holder name: " + holderName + ", emailOrMobileNr or mobile no.: " + emailOrMobileNr; return "Zelle (ClearXchange) - Holder name: " + holderName + ", email or mobile no.: " + emailOrMobileNr;
} }
@Override @Override

View file

@ -33,7 +33,6 @@ import lombok.extern.slf4j.Slf4j;
public final class FasterPaymentsAccountPayload extends PaymentAccountPayload { public final class FasterPaymentsAccountPayload extends PaymentAccountPayload {
private String sortCode; private String sortCode;
private String accountNr; private String accountNr;
private String email;
public FasterPaymentsAccountPayload(String paymentMethod, String id, long maxTradePeriod) { public FasterPaymentsAccountPayload(String paymentMethod, String id, long maxTradePeriod) {
super(paymentMethod, id, maxTradePeriod); super(paymentMethod, id, maxTradePeriod);
@ -48,13 +47,11 @@ public final class FasterPaymentsAccountPayload extends PaymentAccountPayload {
String id, String id,
long maxTradePeriod, long maxTradePeriod,
String sortCode, String sortCode,
String accountNr, String accountNr) {
String email) {
this(paymentMethod, id, maxTradePeriod); this(paymentMethod, id, maxTradePeriod);
this.sortCode = sortCode; this.sortCode = sortCode;
this.accountNr = accountNr; this.accountNr = accountNr;
this.email = email;
} }
@Override @Override
@ -62,8 +59,7 @@ public final class FasterPaymentsAccountPayload extends PaymentAccountPayload {
return getPaymentAccountPayloadBuilder() return getPaymentAccountPayloadBuilder()
.setFasterPaymentsAccountPayload(PB.FasterPaymentsAccountPayload.newBuilder() .setFasterPaymentsAccountPayload(PB.FasterPaymentsAccountPayload.newBuilder()
.setSortCode(sortCode) .setSortCode(sortCode)
.setAccountNr(accountNr) .setAccountNr(accountNr))
.setEmail(email))
.build(); .build();
} }
@ -72,8 +68,7 @@ public final class FasterPaymentsAccountPayload extends PaymentAccountPayload {
proto.getId(), proto.getId(),
proto.getMaxTradePeriod(), proto.getMaxTradePeriod(),
proto.getFasterPaymentsAccountPayload().getSortCode(), proto.getFasterPaymentsAccountPayload().getSortCode(),
proto.getFasterPaymentsAccountPayload().getAccountNr(), proto.getFasterPaymentsAccountPayload().getAccountNr());
proto.getFasterPaymentsAccountPayload().getEmail());
} }
@ -83,13 +78,12 @@ public final class FasterPaymentsAccountPayload extends PaymentAccountPayload {
@Override @Override
public String getPaymentDetails() { public String getPaymentDetails() {
return "FasterPayments - UK Sort code: " + sortCode + ", Account number: " + accountNr + ", Email: " + email; return "FasterPayments - UK Sort code: " + sortCode + ", Account number: " + accountNr;
} }
@Override @Override
public String getPaymentDetailsForTradePopup() { public String getPaymentDetailsForTradePopup() {
return "UK Sort code: " + sortCode + "\n" + return "UK Sort code: " + sortCode + "\n" +
"Account number: " + accountNr + "\n" + "Account number: " + accountNr;
"Email: " + email;
} }
} }

View file

@ -47,8 +47,7 @@ public final class NationalBankAccountPayload extends BankAccountPayload {
String accountNr, String accountNr,
String accountType, String accountType,
String holderTaxId, String holderTaxId,
String bankId, String bankId) {
String email) {
super(paymentMethodName, super(paymentMethodName,
id, id,
maxTradePeriod, maxTradePeriod,
@ -59,8 +58,7 @@ public final class NationalBankAccountPayload extends BankAccountPayload {
accountNr, accountNr,
accountType, accountType,
holderTaxId, holderTaxId,
bankId, bankId);
email);
} }
@Override @Override
@ -92,8 +90,7 @@ public final class NationalBankAccountPayload extends BankAccountPayload {
bankAccountPayload.getAccountNr().isEmpty() ? null : bankAccountPayload.getAccountNr(), bankAccountPayload.getAccountNr().isEmpty() ? null : bankAccountPayload.getAccountNr(),
bankAccountPayload.getAccountType().isEmpty() ? null : bankAccountPayload.getAccountType(), bankAccountPayload.getAccountType().isEmpty() ? null : bankAccountPayload.getAccountType(),
bankAccountPayload.getHolderTaxId().isEmpty() ? null : bankAccountPayload.getHolderTaxId(), bankAccountPayload.getHolderTaxId().isEmpty() ? null : bankAccountPayload.getHolderTaxId(),
bankAccountPayload.getBankId().isEmpty() ? null : bankAccountPayload.getBankId(), bankAccountPayload.getBankId().isEmpty() ? null : bankAccountPayload.getBankId());
bankAccountPayload.getEmail().isEmpty() ? null : bankAccountPayload.getEmail());
} }
@Override @Override

View file

@ -47,8 +47,7 @@ public final class SameBankAccountPayload extends BankAccountPayload {
String accountNr, String accountNr,
String accountType, String accountType,
String holderTaxId, String holderTaxId,
String bankId, String bankId) {
String email) {
super(paymentMethodName, super(paymentMethodName,
id, id,
maxTradePeriod, maxTradePeriod,
@ -59,8 +58,7 @@ public final class SameBankAccountPayload extends BankAccountPayload {
accountNr, accountNr,
accountType, accountType,
holderTaxId, holderTaxId,
bankId, bankId);
email);
} }
@Override @Override
@ -92,8 +90,7 @@ public final class SameBankAccountPayload extends BankAccountPayload {
bankAccountPayload.getAccountNr().isEmpty() ? null : bankAccountPayload.getAccountNr(), bankAccountPayload.getAccountNr().isEmpty() ? null : bankAccountPayload.getAccountNr(),
bankAccountPayload.getAccountType().isEmpty() ? null : bankAccountPayload.getAccountType(), bankAccountPayload.getAccountType().isEmpty() ? null : bankAccountPayload.getAccountType(),
bankAccountPayload.getHolderTaxId().isEmpty() ? null : bankAccountPayload.getHolderTaxId(), bankAccountPayload.getHolderTaxId().isEmpty() ? null : bankAccountPayload.getHolderTaxId(),
bankAccountPayload.getBankId().isEmpty() ? null : bankAccountPayload.getBankId(), bankAccountPayload.getBankId().isEmpty() ? null : bankAccountPayload.getBankId());
bankAccountPayload.getEmail().isEmpty() ? null : bankAccountPayload.getEmail());
} }
/////////////////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////////////////

View file

@ -55,7 +55,6 @@ public final class SpecificBanksAccountPayload extends BankAccountPayload {
String accountType, String accountType,
String holderTaxId, String holderTaxId,
String bankId, String bankId,
String email,
ArrayList<String> acceptedBanks) { ArrayList<String> acceptedBanks) {
super(paymentMethodName, super(paymentMethodName,
id, id,
@ -67,8 +66,7 @@ public final class SpecificBanksAccountPayload extends BankAccountPayload {
accountNr, accountNr,
accountType, accountType,
holderTaxId, holderTaxId,
bankId, bankId);
email);
this.acceptedBanks = acceptedBanks; this.acceptedBanks = acceptedBanks;
} }
@ -106,7 +104,6 @@ public final class SpecificBanksAccountPayload extends BankAccountPayload {
bankAccountPayload.getAccountType().isEmpty() ? null : bankAccountPayload.getAccountType(), bankAccountPayload.getAccountType().isEmpty() ? null : bankAccountPayload.getAccountType(),
bankAccountPayload.getHolderTaxId().isEmpty() ? null : bankAccountPayload.getHolderTaxId(), bankAccountPayload.getHolderTaxId().isEmpty() ? null : bankAccountPayload.getHolderTaxId(),
bankAccountPayload.getBankId().isEmpty() ? null : bankAccountPayload.getBankId(), bankAccountPayload.getBankId().isEmpty() ? null : bankAccountPayload.getBankId(),
bankAccountPayload.getEmail().isEmpty() ? null : bankAccountPayload.getEmail(),
new ArrayList<>(specificBanksAccountPayload.getAcceptedBanksList()) new ArrayList<>(specificBanksAccountPayload.getAcceptedBanksList())
); );
} }

View file

@ -29,7 +29,10 @@ import io.bisq.gui.components.InputTextField;
import io.bisq.gui.main.overlays.popups.Popup; import io.bisq.gui.main.overlays.popups.Popup;
import io.bisq.gui.util.BSFormatter; import io.bisq.gui.util.BSFormatter;
import io.bisq.gui.util.Layout; import io.bisq.gui.util.Layout;
import io.bisq.gui.util.validation.*; import io.bisq.gui.util.validation.AccountNrValidator;
import io.bisq.gui.util.validation.BankIdValidator;
import io.bisq.gui.util.validation.BranchIdValidator;
import io.bisq.gui.util.validation.InputValidator;
import javafx.collections.FXCollections; import javafx.collections.FXCollections;
import javafx.scene.control.ComboBox; import javafx.scene.control.ComboBox;
import javafx.scene.control.Label; import javafx.scene.control.Label;
@ -50,12 +53,12 @@ abstract class BankForm extends PaymentMethodForm {
String countryCode = ((BankAccountPayload) paymentAccountPayload).getCountryCode(); String countryCode = ((BankAccountPayload) paymentAccountPayload).getCountryCode();
if (data.getHolderTaxId() != null) { if (data.getHolderTaxId() != null) {
final String title = Res.get("payment.account.owner") + " / " + Res.get("payment.email") + " / " + BankUtil.getHolderIdLabelShort(countryCode); final String title = Res.get("payment.account.owner") + " / " + BankUtil.getHolderIdLabelShort(countryCode);
final String value = data.getHolderName() + " / " + data.getEmail() + " / " + data.getHolderTaxId(); final String value = data.getHolderName() + " / " + data.getHolderTaxId();
addLabelTextFieldWithCopyIcon(gridPane, ++gridRow, title, value); addLabelTextFieldWithCopyIcon(gridPane, ++gridRow, title, value);
} else { } else {
final String title = Res.get("payment.account.owner") + " / " + Res.get("payment.email"); final String title = Res.get("payment.account.owner");
final String value = data.getHolderName() + " / " + data.getEmail(); final String value = data.getHolderName();
addLabelTextFieldWithCopyIcon(gridPane, ++gridRow, title, value); addLabelTextFieldWithCopyIcon(gridPane, ++gridRow, title, value);
} }
@ -198,15 +201,12 @@ abstract class BankForm extends PaymentMethodForm {
private boolean useHolderID; private boolean useHolderID;
private final Runnable closeHandler; private final Runnable closeHandler;
private ComboBox<TradeCurrency> currencyComboBox; private ComboBox<TradeCurrency> currencyComboBox;
protected final EmailValidator emailValidator;
BankForm(PaymentAccount paymentAccount, InputValidator inputValidator, BankForm(PaymentAccount paymentAccount, InputValidator inputValidator,
GridPane gridPane, int gridRow, BSFormatter formatter, Runnable closeHandler) { GridPane gridPane, int gridRow, BSFormatter formatter, Runnable closeHandler) {
super(paymentAccount, inputValidator, gridPane, gridRow, formatter); super(paymentAccount, inputValidator, gridPane, gridRow, formatter);
this.closeHandler = closeHandler; this.closeHandler = closeHandler;
this.bankAccountPayload = (BankAccountPayload) paymentAccount.paymentAccountPayload; this.bankAccountPayload = (BankAccountPayload) paymentAccount.paymentAccountPayload;
emailValidator = new EmailValidator();
} }
@Override @Override
@ -529,14 +529,6 @@ abstract class BankForm extends PaymentMethodForm {
bankAccountPayload.setHolderTaxId(newValue); bankAccountPayload.setHolderTaxId(newValue);
updateFromInputs(); updateFromInputs();
}); });
InputTextField emailTextField = addLabelInputTextField(gridPane,
++gridRow, Res.get("payment.email")).second;
emailTextField.textProperty().addListener((ov, oldValue, newValue) -> {
bankAccountPayload.setEmail(newValue);
updateFromInputs();
});
emailTextField.setValidator(emailValidator);
} }
@Override @Override
@ -577,8 +569,7 @@ abstract class BankForm extends PaymentMethodForm {
boolean result = isAccountNameValid() boolean result = isAccountNameValid()
&& paymentAccount.getSingleTradeCurrency() != null && paymentAccount.getSingleTradeCurrency() != null
&& getCountryBasedPaymentAccount().getCountry() != null && getCountryBasedPaymentAccount().getCountry() != null
&& holderNameInputTextField.getValidator().validate(bankAccountPayload.getHolderName()).isValid && holderNameInputTextField.getValidator().validate(bankAccountPayload.getHolderName()).isValid;
&& emailValidator.validate(bankAccountPayload.getEmail()).isValid;
String countryCode = bankAccountPayload.getCountryCode(); String countryCode = bankAccountPayload.getCountryCode();
if (validatorsApplied && BankUtil.useValidation(countryCode)) { if (validatorsApplied && BankUtil.useValidation(countryCode)) {
@ -615,8 +606,6 @@ abstract class BankForm extends PaymentMethodForm {
} else { } else {
addLabelTextField(gridPane, ++gridRow, Res.getWithCol("payment.account.owner"), bankAccountPayload.getHolderName()); addLabelTextField(gridPane, ++gridRow, Res.getWithCol("payment.account.owner"), bankAccountPayload.getHolderName());
} }
addLabelTextField(gridPane, ++gridRow, Res.get("payment.email"), bankAccountPayload.getEmail());
} }
protected void addAcceptedBanksForAddAccount() { protected void addAcceptedBanksForAddAccount() {

View file

@ -28,7 +28,6 @@ import io.bisq.gui.util.BSFormatter;
import io.bisq.gui.util.Layout; import io.bisq.gui.util.Layout;
import io.bisq.gui.util.validation.AccountNrValidator; import io.bisq.gui.util.validation.AccountNrValidator;
import io.bisq.gui.util.validation.BranchIdValidator; import io.bisq.gui.util.validation.BranchIdValidator;
import io.bisq.gui.util.validation.EmailValidator;
import io.bisq.gui.util.validation.InputValidator; import io.bisq.gui.util.validation.InputValidator;
import javafx.scene.control.TextField; import javafx.scene.control.TextField;
import javafx.scene.layout.GridPane; import javafx.scene.layout.GridPane;
@ -36,7 +35,8 @@ import org.apache.commons.lang3.StringUtils;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import static io.bisq.gui.util.FormBuilder.*; import static io.bisq.gui.util.FormBuilder.addLabelInputTextField;
import static io.bisq.gui.util.FormBuilder.addLabelTextField;
public class FasterPaymentsForm extends PaymentMethodForm { public class FasterPaymentsForm extends PaymentMethodForm {
private static final Logger log = LoggerFactory.getLogger(FasterPaymentsForm.class); private static final Logger log = LoggerFactory.getLogger(FasterPaymentsForm.class);
@ -48,8 +48,6 @@ public class FasterPaymentsForm extends PaymentMethodForm {
((FasterPaymentsAccountPayload) paymentAccountPayload).getSortCode()); ((FasterPaymentsAccountPayload) paymentAccountPayload).getSortCode());
addLabelTextField(gridPane, ++gridRow, Res.get("payment.accountNr"), addLabelTextField(gridPane, ++gridRow, Res.get("payment.accountNr"),
((FasterPaymentsAccountPayload) paymentAccountPayload).getAccountNr()); ((FasterPaymentsAccountPayload) paymentAccountPayload).getAccountNr());
addLabelTextFieldWithCopyIcon(gridPane, ++gridRow, Res.get("payment.email"),
((FasterPaymentsAccountPayload) paymentAccountPayload).getEmail());
return gridRow; return gridRow;
} }
@ -57,14 +55,11 @@ public class FasterPaymentsForm extends PaymentMethodForm {
private final FasterPaymentsAccount fasterPaymentsAccount; private final FasterPaymentsAccount fasterPaymentsAccount;
private InputTextField accountNrInputTextField; private InputTextField accountNrInputTextField;
private InputTextField sortCodeInputTextField; private InputTextField sortCodeInputTextField;
private final EmailValidator emailValidator;
public FasterPaymentsForm(PaymentAccount paymentAccount, InputValidator inputValidator, GridPane gridPane, public FasterPaymentsForm(PaymentAccount paymentAccount, InputValidator inputValidator, GridPane gridPane,
int gridRow, BSFormatter formatter) { int gridRow, BSFormatter formatter) {
super(paymentAccount, inputValidator, gridPane, gridRow, formatter); super(paymentAccount, inputValidator, gridPane, gridRow, formatter);
this.fasterPaymentsAccount = (FasterPaymentsAccount) paymentAccount; this.fasterPaymentsAccount = (FasterPaymentsAccount) paymentAccount;
emailValidator = new EmailValidator();
} }
@Override @Override
@ -86,14 +81,6 @@ public class FasterPaymentsForm extends PaymentMethodForm {
updateFromInputs(); updateFromInputs();
}); });
InputTextField emailTextField = addLabelInputTextField(gridPane,
++gridRow, Res.get("payment.email")).second;
emailTextField.textProperty().addListener((ov, oldValue, newValue) -> {
fasterPaymentsAccount.setEmail(newValue);
updateFromInputs();
});
emailTextField.setValidator(emailValidator);
TradeCurrency singleTradeCurrency = fasterPaymentsAccount.getSingleTradeCurrency(); TradeCurrency singleTradeCurrency = fasterPaymentsAccount.getSingleTradeCurrency();
String nameAndCode = singleTradeCurrency != null ? singleTradeCurrency.getNameAndCode() : ""; String nameAndCode = singleTradeCurrency != null ? singleTradeCurrency.getNameAndCode() : "";
addLabelTextField(gridPane, ++gridRow, Res.getWithCol("shared.currency"), addLabelTextField(gridPane, ++gridRow, Res.getWithCol("shared.currency"),
@ -124,7 +111,6 @@ public class FasterPaymentsForm extends PaymentMethodForm {
TextField field = addLabelTextField(gridPane, ++gridRow, Res.get("payment.accountNr"), TextField field = addLabelTextField(gridPane, ++gridRow, Res.get("payment.accountNr"),
fasterPaymentsAccount.getAccountNr()).second; fasterPaymentsAccount.getAccountNr()).second;
field.setMouseTransparent(false); field.setMouseTransparent(false);
addLabelTextField(gridPane, ++gridRow, Res.get("payment.email"), fasterPaymentsAccount.getEmail());
TradeCurrency singleTradeCurrency = fasterPaymentsAccount.getSingleTradeCurrency(); TradeCurrency singleTradeCurrency = fasterPaymentsAccount.getSingleTradeCurrency();
String nameAndCode = singleTradeCurrency != null ? singleTradeCurrency.getNameAndCode() : ""; String nameAndCode = singleTradeCurrency != null ? singleTradeCurrency.getNameAndCode() : "";
addLabelTextField(gridPane, ++gridRow, Res.getWithCol("shared.currency"), nameAndCode); addLabelTextField(gridPane, ++gridRow, Res.getWithCol("shared.currency"), nameAndCode);
@ -134,7 +120,6 @@ public class FasterPaymentsForm extends PaymentMethodForm {
@Override @Override
public void updateAllInputsValid() { public void updateAllInputsValid() {
allInputsValid.set(isAccountNameValid() allInputsValid.set(isAccountNameValid()
&& emailValidator.validate(fasterPaymentsAccount.getEmail()).isValid
&& sortCodeInputTextField.getValidator().validate(fasterPaymentsAccount.getSortCode()).isValid && sortCodeInputTextField.getValidator().validate(fasterPaymentsAccount.getSortCode()).isValid
&& accountNrInputTextField.getValidator().validate(fasterPaymentsAccount.getAccountNr()).isValid && accountNrInputTextField.getValidator().validate(fasterPaymentsAccount.getAccountNr()).isValid
&& fasterPaymentsAccount.getTradeCurrencies().size() > 0); && fasterPaymentsAccount.getTradeCurrencies().size() > 0);

View file

@ -56,21 +56,12 @@ public class SameBankForm extends BankForm {
bankAccountPayload.setHolderName(newValue); bankAccountPayload.setHolderName(newValue);
updateFromInputs(); updateFromInputs();
}); });
InputTextField emailTextField = addLabelInputTextField(gridPane,
++gridRow, Res.get("payment.email")).second;
emailTextField.textProperty().addListener((ov, oldValue, newValue) -> {
bankAccountPayload.setEmail(newValue);
updateFromInputs();
});
emailTextField.setValidator(emailValidator);
} }
@Override @Override
public void updateAllInputsValid() { public void updateAllInputsValid() {
boolean result = isAccountNameValid() boolean result = isAccountNameValid()
&& inputValidator.validate(bankAccountPayload.getHolderName()).isValid && inputValidator.validate(bankAccountPayload.getHolderName()).isValid
&& emailValidator.validate(bankAccountPayload.getEmail()).isValid
&& paymentAccount.getSingleTradeCurrency() != null && paymentAccount.getSingleTradeCurrency() != null
&& ((CountryBasedPaymentAccount) paymentAccount).getCountry() != null; && ((CountryBasedPaymentAccount) paymentAccount).getCountry() != null;
@ -97,8 +88,6 @@ public class SameBankForm extends BankForm {
TextField holderNameTextField = tuple.second; TextField holderNameTextField = tuple.second;
holderNameTextField.setMinWidth(300); holderNameTextField.setMinWidth(300);
holderNameTextField.setText(bankAccountPayload.getHolderName()); holderNameTextField.setText(bankAccountPayload.getHolderName());
addLabelTextField(gridPane, ++gridRow, Res.get("payment.email"), bankAccountPayload.getEmail());
} }
} }