You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

80 lines
1.7 KiB

const ibanDemo = function() {
function couldBeIBAN(str) {
return str && countries.isValidISOCode(str.substring(0,2));
}
return {
couldBeIBAN: couldBeIBAN,
couldBeBBAN: function couldBeBBAN(str) {
return str && !couldBeIBAN(str);
}
}
}();
$(document).ready(function(){
function onIBAN(str) {
let html;
if (IBAN.isValid(str)) {
const bban = IBAN.toBBAN(str, ' ');
html = '<h3>This IBAN is VALID! <small>BBAN is ' + bban + '</small></h3>';
} else {
html = '<h3>This IBAN is INVALID!';
}
$('#results').html(html);
$('#results').show();
}
function onBBAN(str) {
let html;
const country = $('#country').val();
if (IBAN.isValidBBAN(country, str)) {
const iban = IBAN.fromBBAN(country, str);
html = '<h3>This BBAN is VALID! <small>IBAN is ' + iban + '</small></h3>';
} else {
html = '<h3>This BBAN is INVALID!';
}
$('#results').html(html);
$('#results').show();
}
$('#userInput').bind('keyup', onChange);
$('#userInput').bind('change', onChange);
$('#results').hide();
$('#country').hide();
$('#countryLb').hide();
$('#userInput').focus();
function onChange() {
const val = $('#userInput').val();
if (ibanDemo.couldBeIBAN(val)) {
$('#country').hide();
$('#countryLb').hide();
}
if (ibanDemo.couldBeBBAN(val)) {
$('#country').show();
$('#countryLb').show();
}
}
$('#goBtn').click(function() {
$('#results').hide();
const val = $('#userInput').val();
if (ibanDemo.couldBeIBAN(val)) {
onIBAN(val);
}
if (ibanDemo.couldBeBBAN(val)) {
onBBAN(val);
}
});
});