Публикация

Валидация полей

//Добавляем в методы
 
methods: {
            setValidationConfig: function() {
                this.callParent(arguments);
                this.addColumnValidator("UsrLastName", this.lastNameValidator); // Только кириллица и тире. Количество символов не может превышать 100 UsrLastName, UsrFirstName и т.д  - названия колонок
                this.addColumnValidator("UsrFirstName", this.firstNameValidator);// Только кириллица и тире. Количество символов не может превышать 100
                this.addColumnValidator("UsrMiddleName", this.middleNameValidator);// Только кириллица и тире. Количество символов не может превышать 100
                this.addColumnValidator("UsrPhone", this.usrPhoneValidator);// Номер телефона не соответствует маске +Ц(ЦЦЦ)ЦЦЦ-ЦЦ-ЦЦ
                this.addColumnValidator("UsrOGRN", this.usrOGRNValidator);//ОГРН должен состоять из 13 цифр
                this.addColumnValidator("UsrINN", this.usrINNValidator);// ИНН ЮЛ должен состоять из 10 цифр
                this.addColumnValidator("UsrAULFullName", this.usrAULFullNameValidator);// Полное наименование ЮЛ не может превышать 512 символов
                this.addColumnValidator("UsrAULShortName", this.usrAULShortNameValidator);// Сокращенное наименование ЮЛ не может превышать 255 символов
                this.addColumnValidator("UsrEmail", this.usrEmailValidator);// Некорректное значение адреса электронной почты
                this.addColumnValidator("UsrLicPer", this.usrLicPerValidator);// Значение должно быть в диапазоне от 1 до 5
            },
            usrLicPerValidator: function() {
                var invalidMessage = "";
                var value = this.get("UsrLicPer");
                invalidMessage = this.usrLicPerFunctionNG(value);
                return {
                    fullInvalidMessage: invalidMessage,
                    invalidMessage: invalidMessage
                };
            },
            usrLicPerFunctionNG: function(value) {
                return value < 1 || value > 5 ? "Значение должно быть в диапазоне от 1 до 5" : "";
            },
            usrEmailValidator: function() {
                var invalidMessage = "";
                var value = this.get("UsrEmail");
                invalidMessage = this.usrEmailFunctionNG(value);
                return {
                    fullInvalidMessage: invalidMessage,
                    invalidMessage: invalidMessage
                };
            },
            usrEmailFunctionNG: function(value) {
                if (!Ext.isEmpty(value)) {
                    if (!((/^[-._a-z0-9]+@(?:[a-z0-9][-a-z0-9]+\.)+[a-z]{2,6}$/.test(value)))) {
                        return "Некорректное значение адреса электронной почты";
                    }
                }
                return "";
            },
            usrAULFullNameValidator: function() {
                var invalidMessage = "";
                var value = this.get("UsrAULFullName");
                invalidMessage = this.usrAULFullNameFunctionNG(value);
                return {
                    fullInvalidMessage: invalidMessage,
                    invalidMessage: invalidMessage
                };
            },
            usrAULFullNameFunctionNG: function(value) {
                return value && value.length > 512 ? "Полное наименование ЮЛ не может превышать 512 символов" : "";
            },
            usrAULShortNameValidator: function() {
                var invalidMessage = "";
                var value = this.get("UsrAULShortName");
                invalidMessage = this.usrAULShortNameFunctionNG(value);
                return {
                    fullInvalidMessage: invalidMessage,
                    invalidMessage: invalidMessage
                };
            },
            usrAULShortNameFunctionNG: function(value) {
                return value && value.length > 254 ? "Сокращенное наименование ЮЛ не может превышать 255 символов" : "";
            },
            usrINNValidator: function() {
                var invalidMessage = "";
                var value = this.get("UsrINN");
                invalidMessage = this.usrINNFunctionNG(value);
                return {
                    fullInvalidMessage: invalidMessage,
                    invalidMessage: invalidMessage
                };
            },
            usrINNFunctionNG: function(value) {
                if (!Ext.isEmpty(value)) {
                    if (!((/^\d{10}$/.test(value)))) {
                        return "ИНН ЮЛ должен состоять из 10 цифр";
                    }
                }
                return "";
            },
            usrOGRNValidator: function() {
                var invalidMessage = "";
                var value = this.get("UsrOGRN");
                invalidMessage = this.usrOGRFunctionNG(value);
                return {
                    fullInvalidMessage: invalidMessage,
                    invalidMessage: invalidMessage
                };
            },
            usrOGRFunctionNG: function(value) {
                if (!Ext.isEmpty(value)) {
                    if (!((/^\d{13}$/.test(value)))) {
                        return "ОГРН должен состоять из 13 цифр";
                    }
                }
                return "";
            },
            usrPhoneValidator: function() {
                var invalidMessage = "";
                var value = this.get("UsrPhone");
                invalidMessage = this.mobileFunctionNG(value);
                return {
                    fullInvalidMessage: invalidMessage,
                    invalidMessage: invalidMessage
                };
            },
            mobileFunctionNG: function(value) {
                if (!Ext.isEmpty(value)) {
                    if (!((/^\+\d\(\d{3}\)\d{3}\-\d{2}\-\d{2}$/.test(value)))) {
                        return "Номер телефона не соответствует маске +Ц(ЦЦЦ)ЦЦЦ-ЦЦ-ЦЦ";
                    }
                }
                return "";
            },
            lastNameValidator: function() {
                var invalidMessage = "";
                var value = this.get("UsrLastName");
                invalidMessage = this.fioFunctionNG(value);
                return {
                    fullInvalidMessage: invalidMessage,
                    invalidMessage: invalidMessage
                };
            },
            firstNameValidator: function() {
                var value = this.get("UsrFirstName");
                var invalidMessage = "";
                invalidMessage = this.fioFunctionNG(value);
                return {
                    fullInvalidMessage: invalidMessage,
                    invalidMessage: invalidMessage
                };
            },
            middleNameValidator: function() {
                var value = this.get("UsrMiddleName");
                var invalidMessage = "";
                invalidMessage = this.fioFunctionNG(value);
                return {
                    fullInvalidMessage: invalidMessage,
                    invalidMessage: invalidMessage
                };
            },
            fioFunctionNG: function(value) {
                if (!Ext.isEmpty(value)) {
                    if (!((/^[а-яА-ЯёЁ][а-яА-ЯёЁ\-]{1,99}$/.test(value)))) {
                        return "Только кириллица и тире. Количество символов не может превышать 100.";
                    }
                }
                return "";
            }
        },

 

Нравится

Поделиться

0 комментариев
Показать все комментарии