$( document ).ready(function() { var currentLanguge = definesLanguage(), errorText = { requiredText: { en: "This field is required", ru: "Это поле обязательно для заполнения", es: "Este campo es requerido", de: "Dieses Feld wird benötigt", fr: "Ce champ est requis", it: "Questo campo è obbligatorio", zh: "这是必填栏", }, minlength_2: { en: "Please enter at least 2 characters", ru: "Введите не менее 2 символов", es: "Por favor ingrese al menos 2 caracteres", de: "Bitte geben Sie mindestens 2 Zeichen ein", fr: "Veuillez saisir au moins 2 caractères", it: "Inserisci almeno 2 caratteri", zh: "请输入至少2个字符", }, maxlength_30: { en: "Enter up to 30 characters", ru: "Введите не более 30 символов", es: "Ingrese hasta 30 caracteres", de: "Geben Sie bis zu 30 Zeichen ein", fr: "Entrez jusqu'à 30 caractères", it: "Inserisci fino a 30 caratteri", zh: "输入最多30个字符", }, emailText: { en: "Invalid email address", ru: "Недопустимый электронный адрес", es: "Dirección de correo electrónico no válida", de: "Ungültige E-Mail-Adresse", fr: "Adresse e-mail invalide", it: "indirizzo email non valido", zh: "无效的邮件地址", }, maxlength_50: { en: "Enter up to 50 characters", ru: "Введите не более 50 символов", es: "Ingrese hasta 50 caracteres", de: "Geben Sie bis zu 50 Zeichen ein", fr: "Entrez jusqu'à 50 caractères", it: "Inserisci fino a 50 caratteri", zh: "输入最多50个字符", }, }; $("#contact-callback-form").attr("action","/sender.php"); $(document).on("focus","#contact-callback-form",function(){ if(!($("#contact-callback-form").find(".arfield").length)) { $('#contact-callback-form').validate({ rules: { first_name: { required: true, minlength: 2, maxlength: 30 }, last_name: { required: true, minlength: 2, maxlength: 30 }, phone_number: { required: true, minlength: 2, maxlength: 50 }, email: { required: true, email: true, newEmailRules: true }, language: { required: true, }, agreement: { required: true, } }, messages: { first_name: { required: errorText.requiredText[currentLanguge], minlength: errorText.minlength_2[currentLanguge], maxlength: errorText.maxlength_30[currentLanguge] }, last_name: { required: errorText.requiredText[currentLanguge], minlength: errorText.minlength_2[currentLanguge], maxlength: errorText.maxlength_30[currentLanguge] }, phone_number: { required: errorText.requiredText[currentLanguge], minlength: errorText.minlength_2[currentLanguge], maxlength: errorText.maxlength_50[currentLanguge] }, email: { required: errorText.requiredText[currentLanguge], email: errorText.emailText[currentLanguge], newEmailRules: errorText.emailText[currentLanguge] }, language: { required: errorText.requiredText[currentLanguge], }, agreement: { required: errorText.requiredText[currentLanguge], } }, submitHandler: function (form) { $.ajax({ type: "POST", url: "/sender.php", data: {arfield: "field", form:"#contact-callback-form"}, success: function(data) { $('#contact-callback-form').append(data); $.ajax({ type: "POST", url: "/sender.php", data: {arfield: "code", form:"#contact-callback-form"}, success: function(data) { $('#contact-callback-form').find(".arfield").val(data); var formData = {}; $.map($('#contact-callback-form').serializeArray(), function(n, i) { formData[n['name']] = n['value']; }); $.post("/sender.php", formData, function(response) { response = JSON.parse(response); if (response.status) { $(document).trigger("form_submitted"); $("#successPopup").show(); } }); } }); } }); } }); } }); function definesLanguage() { var pageUrl = location.pathname.split('/'); var curLanguage; for (var i = 0; i < pageUrl.length; i++) { if (pageUrl[i] == 'ru' || pageUrl[i] == 'es' || pageUrl[i] == 'de' || pageUrl[i] == 'fr' || pageUrl[i] == 'it' || pageUrl[i] == 'zh') { curLanguage = pageUrl[i]; break; } else { curLanguage = "en"; } } return curLanguage; } });