1$(function(){ 2 3 $("#submitContactFormButton").on("click", function(e) { 4 e.preventDefault(); 5 $("#contactForm").submit(); 6 }); 7 8 $('input').on('keyup', function() { 9 $(this).removeClass('error'); 10 }); 11 12 $('textarea').on('keyup', function() { 13 $(this).removeClass('error'); 14 }); 15 16 $('select').on('change', function() { 17 $(this).next('.bootstrap-select').next('.error').remove(); 18 $(this).next('.bootstrap-select').find('button').removeClass('error'); 19 }); 20 21 $("#contactForm").submit(function(e){ 22 e.preventDefault(); 23 24 $("#submitContactFormButton").attr("disabled", "disabled"); 25 $("#resultMessage").removeClass('alert-danger alert-success'); 26 $("#resultMessage").empty(); 27 $("#resultMessage").addClass('hidden'); 28 $('div.error').remove(); 29 var errorInputs = document.getElementsByClassName("form-control error"); 30 for (errorInput of errorInputs) { 31 document.getElementById(errorInput.id).classList.remove("error"); 32 } 33 34 dataString = $("#contactForm").serialize(); 35 36 $.ajax({ 37 type: "POST", 38 // url: "/site/includes/backend/contact.php", 39 url: "/site/contact/nl", 40 data: dataString, 41 dataType: "json", 42 success: function(data) { 43 44 var errorIcon = '<i class="icon-warning-sign"></i> '; 45 46 if (data.errors != null) { 47 for (var i = 0; i < data.errors.length; i++) { 48 if (data.errors[i].id != null) { 49 var field = $('#' + data.errors[i].id); 50 if (field.is('select')) { 51 field.next('.bootstrap-select').find('button').addClass('error'); 52 field.next('.bootstrap-select').after('<div class="error">' + errorIcon + data.errors[i].errMsg + '</div>'); 53 } else { 54 field.addClass('error'); 55 field.after('<div class="error">' + errorIcon + data.errors[i].errMsg + '</div>'); 56 } 57 } else { 58 $("#resultMessage").append(errorIcon + data.errors[i].errMsg + '<br>'); 59 } 60 } 61 62 $("#submitContactFormButton").removeAttr("disabled"); 63 $("#resultMessage").addClass('alert-danger'); 64 $("#resultMessage").removeClass('hidden'); 65 if ($("#resultMessage").html() == '') { 66 $("#resultMessage").html(errorIcon + "Uw vraag werd niet verzonden. Zie eventuele meldingen hierboven."); 67 } 68 69 return; 70 } else if (data.csrfError != null) { 71 document.location.reload(); 72 return; 73 } 74 75 if (data.status != null && data.status == "OK") { 76 $("#resultMessage").addClass('alert-success'); 77 $("#resultMessage").html("<i class=\"icon-ok-sign\"></i> We hebben uw vraag goed ontvangen. Wij nemen zo snel mogelijk contact met u op."); 78 $("#resultMessage").removeClass('hidden'); 79 } else { 80 $("#resultMessage").addClass('alert-danger'); 81 $("#resultMessage").removeClass('hidden'); 82 $("#resultMessage").html(errorIcon + "Er trad helaas een fout op"); 83 } 84 85 }, 86 error: function(jqXHR, textStatus, errorThrown) { 87 $("#resultMessage").addClass('alert-danger'); 88 $("#resultMessage").html("<i class=\"icon-warning-sign\"></i> Uw vraag kon helaas niet verwerkt worden. Neem aub contact op via +31 413 72 42 00."); 89 $("#resultMessage").removeClass('hidden'); 90 $("#submitContactFormButton").removeAttr("disabled"); 91 } 92 93 }); 94 95 }); 96 97}); 98
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.