Added online bankdata validation
This commit is contained in:
@@ -496,6 +496,12 @@
|
||||
<input type="text" class="form-control" name="bank_account_bic" id="bank_account_bic" value="<?=$order->bank_account_bic?>" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="form-group row">
|
||||
<label class="col-lg-2 col-form-label" for="bank_account_bic"></label>
|
||||
<div class="col-lg-10 alert alert-danger hidden" id="bank-error"></div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -1231,9 +1237,11 @@
|
||||
/*********************
|
||||
* Form validation
|
||||
*/
|
||||
|
||||
|
||||
var bankdata_valid = false;
|
||||
|
||||
// iban validation
|
||||
function validateIban(iban) {
|
||||
function validateIbanFormat(iban) {
|
||||
if(!iban) {
|
||||
return false;
|
||||
}
|
||||
@@ -1270,6 +1278,59 @@
|
||||
}
|
||||
}
|
||||
|
||||
function validateIbanBic(iban, bic) {
|
||||
if(!iban) return false;
|
||||
iban = iban.toUpperCase().replace(/\s+/, '');
|
||||
|
||||
$.post("<?=self::getUrl("Address", "api")?>", {
|
||||
do: "validateIbanBic",
|
||||
iban: iban,
|
||||
bic: bic
|
||||
},
|
||||
function(success) {
|
||||
if(success.status == "OK") {
|
||||
var data = success.result;
|
||||
$("#bank-error").hide();
|
||||
$("#bank-error").text("");
|
||||
|
||||
if(data.iban_correct && !data.iban_sus && data.bic_correct) {
|
||||
bankdata_valid = true;
|
||||
$('#orderForm').submit();
|
||||
return;
|
||||
}
|
||||
|
||||
var bank_error = [];
|
||||
|
||||
if(!data.iban_correct) {
|
||||
$("#bank_account_iban").addClass("invalid");
|
||||
bank_error.push("Ungültige IBAN!");
|
||||
}
|
||||
if(data.iban_sus) {
|
||||
$("#bank_account_iban").addClass("invalid");
|
||||
bank_error.push("IBAN verdächtig (" + data.iban_sus + ")!");
|
||||
}
|
||||
if(!data.bic_correct) {
|
||||
$("#bank_account_bic").addClass("invalid");
|
||||
bank_error.push("Ungültige BIC!");
|
||||
if(Array.isArray(data.bic)) {
|
||||
bank_error.push(" Mögliche korrekte BIC: " + data.bic.join(", "));
|
||||
}
|
||||
}
|
||||
|
||||
$("#bank-error").html(bank_error.join("<br />\n"));
|
||||
$("#bank-error").show();
|
||||
|
||||
|
||||
} else {
|
||||
$("#bank-error").text("Beim Validieren der Bankdaten ist ein Fehler aufgetreten.");
|
||||
}
|
||||
},
|
||||
"json"
|
||||
);
|
||||
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
|
||||
function validateOrderForm() {
|
||||
@@ -1349,16 +1410,23 @@
|
||||
}*/
|
||||
|
||||
// check bankdaten
|
||||
if($('#billing_type').val() == "sepa") {
|
||||
if($('#billing_type').val() == "sepa" && !bankdata_valid) {
|
||||
checkEmpty.push("bank_account_bank");
|
||||
checkEmpty.push("bank_account_owner");
|
||||
checkEmpty.push("bank_account_bic");
|
||||
|
||||
if(!validateIban($("#bank_account_iban").val())) {
|
||||
$("#bank_account_iban").removeClass("invalid");
|
||||
$("#bank_account_bic").removeClass("invalid");
|
||||
|
||||
if(!validateIbanFormat($("#bank_account_iban").val())) {
|
||||
$("#bank_account_iban").addClass("invalid");
|
||||
$("#iban_error").show();
|
||||
error = true;
|
||||
}
|
||||
|
||||
if(!validateIbanBic($("#bank_account_iban").val(), $("#bank_account_bic").val())) {
|
||||
error = true;
|
||||
}
|
||||
}
|
||||
|
||||
// owner_id & billingaddress_id
|
||||
|
||||
Reference in New Issue
Block a user