jQuery.validator.setDefaults({
debug: true,
errorElement: "div",
// errorClass: "form-item--error-message",
rules: {
email: {
email: true,
pattern: /^[a-zA-Z0-9\._-]+@[a-zA-Z0-9-]+\.[a-z]{2,6}$/i,
},
phone: {
required: true,
pattern: /^((8|\+374|\+994|\+995|\+375|\+7|\+380|\+38|\+996|\+998|\+993)[\- ]?)?\(?\d{3,5}\)?[\- ]?\d{1}[\- ]?\d{1}[\- ]?\d{1}[\- ]?\d{1}[\- ]?\d{1}(([\- ]?\d{1})?[\- ]?\d{1})?$/i,
// pattern: /^(\+\d{1,3}[- ]?)?\d{10}$/,
// pattern: /^((\+7|8)[0-9]{10})$/,
// pattern: /^((\+7|8)[0-9]{10})$/,
// pattern: /^((\+7|8)[\- ]?[\(]?[0-9]{3,4}[\)]?[\- ]?[0-9]{2,3}[\- ]?[0-9]{2}[\- ]?[0-9]{2})$/,
},
},
messages: {
email: {
email: "Пожалуйста, введите корректный адрес электронной почты",
pattern: "Пожалуйста, введите корректный адрес электронной почты",
},
phone: {
pattern: "Неверный номер",
},
},
});
$("form.webform-submission-form").each(function () {
var form = $(this);
form.find(".form-item input").on("keypress blur", function (e) {
form.validate().element(e.currentTarget);
});
});
if (typeof Drupal !== "undefined" && typeof Drupal.Ajax !== "undefined" && typeof Drupal.Ajax.prototype.beforeSubmitCVOriginal === "undefined") {
Drupal.Ajax.prototype.beforeSubmitCVOriginal = Drupal.Ajax.prototype.beforeSubmit;
Drupal.Ajax.prototype.beforeSubmit = function (form_values, element_settings, options) {
if (options.data._triggering_element_name === "op") {
if (typeof this.$form !== "undefined") {
// $(this.$form).validate(drupalSettings.cvJqueryValidateOptions);
if (this.$form.valid()) {
// console.log("ФОРМА ВАЛИДНА");
} else {
// console.log("ФОРМА НЕ ВАЛИДНА");
this.ajaxing = false;
return false;
}
}
}
return this.beforeSubmitCVOriginal(form_values, element_settings, options);
};
}