/** * Add a rule to the rules array * The rule needs to be completely configured before adding it to the array * * @param AbstractValidator $rule Rule object * @param string $fieldName Field name the rule belongs to * @param bool $breakOnError Break the rule chain when TRUE * @return \TYPO3\CMS\Form\Utility\ValidatorUtility */ public function addRule(AbstractValidator $rule, $fieldName, $breakOnError = FALSE) { $prefix = $this->getPrefix(); $this->rules[$prefix][] = array('instance' => (object) $rule, 'fieldName' => (string) $fieldName, 'breakOnError' => (bool) $breakOnError); if ($rule->messageMustBeDisplayed()) { if (!isset($this->messages[$prefix][$fieldName])) { $this->messages[$prefix][$fieldName] = array(); } end($this->rules[$prefix]); $key = key($this->rules[$prefix]); $message = $rule->getMessage(); $this->messages[$prefix][$fieldName][$key][$key + 1] = $message['cObj']; $this->messages[$prefix][$fieldName][$key][$key + 1 . '.'] = $message['cObj.']; } return $this; }