1$(document).ready(function () { 2 3 if (ENV.page === "abopraemie") { 4 5 function showErrorMessage() { 6 $('.form-error-message').show(); 7 } 8 9 function hideErrorMessages() { 10 $('.form-error-message').hide(); 11 $('input, select').removeClass('error'); 12 } 13 14 function collectInputs() { 15 var inputsData = []; 16 var hasError = false; 17 18 $.each($('input[type="text"]'), function (index, item) { 19 if ($(item).prop('required')) { 20 if ($(item).val() !== '') { 21 inputsData[$(item).attr('name')] = $(item).val(); 22 } else { 23 $(item).addClass('error'); 24 hasError = true; 25 } 26 } else { 27 inputsData[$(item).attr('name')] = $(item).val(); 28 } 29 }); 30 31 if ($('input[type="checkbox"]:checked').length === 0) { 32 $('input[type="checkbox"]').addClass('error'); 33 hasError = true; 34 } 35 36 return hasError ? false : inputsData; 37 } 38 39 function collectSelects() { 40 var inputSelects = []; 41 var hasError = false; 42 43 $.each($('select'), function (index, item) { 44 if ($(item).hasClass('select-item-count')) { 45 if ($(item).val() !== "0") { 46 47 var x = $(item).attr('data-id'); 48 49 console.log(x); 50 inputSelects[$(item).attr('data-id')] = $(item).val(); 51 } 52 } else { 53 inputSelects[$(item).attr('name')] = $(item).val(); 54 } 55 }); 56 57 return hasError ? false : inputSelects; 58 } 59 60 function collectLocation() { 61 if (typeof $('input[name="selection"]:checked').val() != "undefined") { 62 return [{location: $('input[name="selection"]:checked').val()}]; 63 } else { 64 $('input[name="selection"]').addClass('error'); 65 return false; 66 } 67 } 68 function collectAgb() { 69 if (typeof $('input[name="agb"]:checked').val() != "undefined") { 70 return [{agb: $('input[name="agb"]:checked').val()}]; 71 } else { 72 $('input[name="agb"]').addClass('error'); 73 return false; 74 } 75 } 76 77 78 79 function collectFormData() { 80 var formData = []; 81 var inputsData = collectInputs(); 82 var selectsData = collectSelects(); 83 var location = collectLocation(); 84 var agb = collectAgb(); 85 86 87 if (inputsData === false || selectsData === false || location === false || agb === false ) { 88 return false; 89 } else { 90 formData = []; 91 formData = $.extend(formData, selectsData, inputsData, location[0], agb[0]); 92 return formData; 93 } 94 } 95 96 function sendOrder(bodyData, callback) { 97 98 99 var body = { 100 m: 'send_abopraemie_order' 101 }; 102 103 $.extend(body, bodyData); 104 105 console.log(body); 106 107 CbUx.showLoader(); 108 $.get(ENV.link_root + '/abopraemie.json', body, function () { 109 CbUx.hideLoader(); 110 if (typeof callback === 'function') { 111 callback(); 112 } 113 }); 114 115 } 116 117 function registerDrinksAndFoodForm() { 118 119 $('#order-button').on('click', function () { 120 hideErrorMessages(); 121 122 var formData = collectFormData(); 123 124 if (formData === false) { 125 showErrorMessage(); 126 } else { 127 sendOrder(formData, function () { 128 $('.order-form').hide(); 129 $('.order-done').fadeIn('333'); 130 }); 131 } 132 }); 133 134 $('#abort-button').on('click', function () { 135 CbUx.showLoader(); 136 window.location.href = ENV.link_root + '/abopraemie'; 137 }); 138 } 139 140 141 registerDrinksAndFoodForm(); 142 } 143 144});
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.