/* More info: https://github.com/Foxentry/Javascript-API */ /** * If Foxentry validation is success and complete, remove * enter key handler and reset BootstrapValidation. */ function addressValidationHandler(validatorResponse) { if (validatorResponse.success) { $form.data('bootstrapValidator').resetForm().validate(); $form.off('keypress', '.foxentry-input', disableFoxentrySubmit);/* $('.alert-foxentry-invalid').remove();*/ } /*else { var header = $('.logged-in .foxentry-input-invalid')[0].closest('.form-block'); //var header = $('.logged-in .form-block .form-control'); if (header.length) { var alert = '
Vaši adresu jsme nenašli v databázi. ' + 'Prosím, překontrolujte si zadané údaje. Pokud si jste jistí, že jste zadali údaje správně, ' + 'můžete bez obav pokračovat na další krok.
'; header = $(header).find('h3'); header.after(alert); } }*/ } /** * Set Foxentry callback functions. */ function onFoxentryProjectLoad() { FoxentryBuilder.setCallbacks( { 'address': addressValidationHandler, 'company': addressValidationHandler, } ); } /** * Disable form submit when Foxentry is active and has invalid fields. */ function checkFoxentry(el) { // no credit, daily limit overflow, wrong domain... skip validation if (!Foxentry.isReady()) { return true; // todo: send warning to sentry } var form = document.querySelector(el); var formValidation = Foxentry.formValidation(form); var invalidInputs = formValidation.inputs.invalid; // loop through invalid entries for (var input in invalidInputs) { if (invalidInputs.hasOwnProperty(input)) { var domNode = invalidInputs[input].input; // check if input is visible if (domNode.offsetParent) { return false; } } } // all inputs are valid or hidden return true; } /** * Disable enter key submit during Foxentry validation. */ function disableFoxentrySubmit(event) { if (event.keyCode === 13) { event.stopPropagation(); event.preventDefault(); } }