protected function _createValidator() { lmb_require('limb/cms/src/validation/rule/lmbCmsUniqueFieldRule.class.php'); $validator = new lmbValidator(); $validator->addRequiredRule('title', '"Title" обязательное поле'); $validator->addRequiredRule('url', '"Url" обязательное поле'); $validator->addRule(new lmbCmsUniqueFieldRule('url', 'lmbCmsSeo', $this, '"Url" должен быть уникальным')); return $validator; }
/** * @return lmbValidator */ protected function _createValidator() { $validator = new lmbValidator(); $validator->addRequiredRule('identifier', 'Поле "Идентификатор" обязательно для заполнения'); $validator->addRequiredRule('content', 'Поле "Текст" обязательно для заполнения'); lmb_require('limb/cms/src/validation/rule/lmbCmsTextBlockUniqueFieldRule.class.php'); $validator->addRule(new lmbCmsTextBlockUniqueFieldRule('identifier', $this, 'Текстовый блок со значением поля "Идентификатор" уже существует')); return $validator; }
function testAddRulesAndValidate() { $validator = new lmbValidator(); $ds = new lmbSet(array('foo')); $r1 = new MockValidationRule(); $r2 = new MockValidationRule(); $this->validator->addRule($r1); $this->validator->addRule($r2); $this->assertTrue($validator->validate($ds)); }
/** * @param lmbCmsUser $user */ protected function _validatePasswordFields($user) { $validator = new lmbValidator($this->error_list); $validator->addRequiredRule('password', 'Поле "Пароль" обязательно для заполнения'); $validator->addRequiredRule('repeat_new_password', 'Поле "Подтверждение пароля" обязательно для заполнения'); if (!$user->isPasswordCorrect($this->request->get('password'))) { $this->error_list->addError("Выбран некорректный пароль"); } $validator->addRule(new lmbMatchRule('password', 'repeat_password', 'Значения полей "Пароль" и "Подтверждение пароля" не совпадают')); $validator->validate($this->request); }
/** * @return lmbValidator */ protected function _createValidator() { $validator = new lmbValidator(); $validator->addRequiredRule('name', 'Поле "Имя" обязательно для заполнения'); $validator->addRequiredRule('login', 'Поле "Логин" обязательно для заполнения'); $validator->addRequiredRule('email', 'Поле "E-mail" обязательно для заполнения'); lmb_require('limb/cms/src/validation/rule/lmbCmsUserUniqueFieldRule.class.php'); $validator->addRule(new lmbCmsUserUniqueFieldRule('login', $this)); $validator->addRule(new lmbCmsUserUniqueFieldRule('email', $this)); lmb_require('limb/validation/src/rule/lmbEmailRule.class.php'); $validator->addRule(new lmbEmailRule('email', 'Неверный формат поля "E-mail"')); return $validator; }
/** * Main function for building rules. * * @param array $rules_lists - list (array) of rules' lists, $field => $list. * List of rules can be a string: * $rules_lists['field'] = 'rule1|rule2|rule3'; * or an array: * $rules_lists['field'] = array($rule1, $rule2, $rule3); * * Rules can be in several formats: * $rule['field'] = array( * 'rule1[param1, param2]', // simple rule format - rule, followed by optional params in square brackets * 'rule2[param1]' => 'error2', // extended rule format, simple rule format => error message. * 'rule3' => 'error3' * ); * * @param object $validator (optional) */ static function addRules($rules_lists, lmbValidator $validator) { if (!is_array($rules_lists)) { return; } foreach ($rules_lists as $field => $list) { if (is_string($list)) { $list = explode('|', $list); } foreach ($list as $rule_name => $rule) { $args = ''; if (is_string($rule_name)) { $args = $rule; $rule = $rule_name; } if ($object_rule = self::parseRule($field, $rule, $args)) { $validator->addRule($object_rule); } } } }
function _createValidator() { $validator = new lmbValidator(); $validator->addRequiredRule('title', 'Поле "Заголовок" обязательно для заполнения'); $validator->addRequiredRule('content', 'Поле "Текст" обязательно для заполнения'); $validator->addRequiredRule('identifier', 'Поле "Идентификатор" обязательно для заполнения'); lmb_require('limb/cms/src/validation/rule/lmbTreeIdentifierRule.class.php'); $validator->addRule(new lmbTreeIdentifierRule('identifier')); return $validator; }
function testErrorListIsSharedWithCollection() { $user = $this->creator->initUser(); $group = new GroupForTest(); $validator = new lmbValidator(); $validator->addRequiredRule('title'); $group->setValidator($validator); $user->addToGroups($group); $error_list = new lmbErrorList(); $this->assertFalse($user->trySave($error_list)); }
function validate($dataspace) { $this->validator->validate($dataspace); return $this->validator->isValid(); }
function _createValidator() { $validator = new lmbValidator(); $validator->addRequiredObjectRule('social_security'); return $validator; }
function testErrorListIsSharedWithCollection() { $course = $this->_initCourse(); $l = new LectureForTest(); $validator = new lmbValidator(); $validator->addRequiredRule('title'); $l->setValidator($validator); $course->addToLectures($l); $error_list = new lmbErrorList(); $this->assertFalse($course->trySave($error_list)); }
function testValidateEmpty() { $validator = new lmbValidator(); $this->assertTrue($validator->validate(new lmbSet())); }
protected function _createValidator() { $validator = new lmbValidator(); $validator->addRequiredRule('field'); return $validator; }
function _createValidator() { $validator = new lmbValidator(); $validator->addRequiredRule('extra'); return $validator; }