1$(function(){ 2 if($(".request-call-contacts").length>0) { 3 $("body").on("focus", ".request-call-contacts .error", function() { 4 $(this).removeClass('error'); 5 return false; 6 }); 7 $("body").on('click', ".request-call-contacts .button", function () { 8 9 var error = 0; 10 11 var form = $(this).parents("form"); 12 // ÐаÑвка Ñже оÑпÑавлÑеÑÑÑ â повÑоÑнÑй клик не дÑблиÑÑÐµÑ ÐµÑ. 13 if (form.data('ufBusy')) { 14 return false; 15 } 16 var widgetId = $(form).find('.g-recaptcha').attr('captcha-id'); 17 var response = grecaptcha.getResponse(widgetId); 18 if(response.length == 0) { 19 error++; 20 alert('ÐÑ Ð½Ðµ пÑоÑли пÑовеÑÐºÑ CAPTCHA должнÑм обÑазом'); 21 return false; 22 } 23 var resultMessage = $(".request-call-contacts").find(".message"); 24 var loader = $(".request-call-contacts").find(".loader"); 25 form.find("input, textarea").each(function() { 26 if ($(this).hasClass('required')) { 27 if($(this).val().length == 0 || ($(this).attr('data-name') == 'phone' && $(this).val().length <= 13)) { 28 error++; 29 $(this).addClass('error'); 30 } 31 } 32 }); 33 if (error == 0) { 34 $.ajax({ 35 type: "post", 36 url: '/local/templates/uniform_met/ajax/connector.php', 37 data: { 38 'act': 'request_call_contacts', 39 'form_text_4': form.find("input[name='form_text_4']").val(), 40 'form_text_5': form.find("input[name='form_text_5']").val(), 41 'form_text_6': form.find("input[name='form_text_6']").val(), 42 'form_textarea_7': form.find("textarea[name='form_textarea_7']").val(), 43 'web_form_submit': "Y", 44 'WEB_FORM_ID': form.find("input[name='WEB_FORM_ID']").val(), 45 'sessid': form.find("input[name='sessid']").val(), 46 // Токен Ñвоего виджеÑа, а не пеÑвого на ÑÑÑаниÑе Ñ Ñем же id. 47 'g-recaptcha-response': response, 48 }, 49 beforeSend: function () { 50 form.data('ufBusy', true); 51 loader.fadeIn(300); 52 }, 53 complete: function () { 54 form.data('ufBusy', false); 55 }, 56 success: function (response) { 57 loader.fadeOut(600); 58 var result = ufLegacyForms.result(response); 59 if (!result.ok) { 60 ufLegacyForms.showError(null, result.error); 61 grecaptcha.reset(widgetId); 62 return; 63 } 64 ufLegacyForms.goal("callback"); 65 ufLegacyForms.ga("send", "event", "callback", "done"); 66 ufLegacyForms.clear(form); 67 resultMessage.fadeIn(); 68 setTimeout(function(){ 69 resultMessage.fadeOut(600); 70 grecaptcha.reset(widgetId); 71 }, 4000); 72 } 73 }); 74 } 75 return false; 76 }); 77 } 78});
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.