1$(document).ready(function () { 2 3 if (ENV.page === "anmeldung-veranstaltung" || ENV.page === "anmeldung-online-veranstaltung" || ENV.page === "anmeldung-kostenlose-veranstaltung") { 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 ($('.order-form input[type="checkbox"]:checked').length === 0) { 32 $('.order-form 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 collectFormData() { 61 var formData = []; 62 var inputsData = collectInputs(); 63 var selectsData = collectSelects(); 64 65 if (inputsData === false || selectsData === false) { 66 return false; 67 } else { 68 formData = []; 69 formData = $.extend(formData, selectsData, inputsData); 70 return formData; 71 } 72 } 73 74 function sendOrder(bodyData, callback) { 75 76 77 var body = { 78 m: 'send_anmeldung_veranstaltung', 79 event_title: $('#event-title-value').html(), 80 event_datetime: $('#event-datetime-value').html(), 81 form: ENV.page 82 }; 83 84 $.extend(body, bodyData); 85 86 console.log(body); 87 88 CbUx.showLoader(); 89 $.get(ENV.link_root + '/anmeldung_veranstaltung.json', body, function () { 90 CbUx.hideLoader(); 91 if (typeof callback === 'function') { 92 callback(); 93 } 94 }); 95 96 } 97 98 function registerDrinksAndFoodForm() { 99 100 $('#order-button').on('click', function () { 101 hideErrorMessages(); 102 103 var formData = collectFormData(); 104 105 if (formData === false) { 106 showErrorMessage(); 107 } else { 108 sendOrder(formData, function () { 109 $('.order-form').hide(); 110 $('.order-done').fadeIn('333'); 111 }); 112 } 113 }); 114 115 $('#abort-button').on('click', function () { 116 CbUx.showLoader(); 117 window.location.reload(); 118 }); 119 } 120 121 registerDrinksAndFoodForm(); 122 } 123 124});
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.