Не получается вывести ошибку в хуке ajaxform, как исправить?

Допустим есть код в хуке ajaxform, который по какому-то при знаку должен вернуть ошибку и дальше не будет обрабатываться, а сам снипет в вызове такой же формит, согласно докам это можно сделать так
return $AjaxForm->error('Ошибка отправки слишком большой текст');
но когда я ставлю в свой хук, то вообще не реагирует на это.
{'!AjaxForm' | snippet : [
            'form' => 'modal-form-reviews',
            'snippet' => 'FormIt',
            'hooks' => 'rcv3,customReviews,email',
            'emailSubject' => 'Отзыв с сайта {$_modx->config.site_name}',
            'emailTpl' => 'modalFormEmail',
            'validate' => 'first__name:required,rating:required,message:required,g-recaptcha-response:required',
        ]}
Хук
$review = $hook->getValue('message');  
    if(strlen($review) > 1000){
        return $AjaxForm->error('Ошибка отправки отзыва. Слишком большой текст');
    }
Vladimir
15 февраля 2022, 13:10
modx.pro
559
0

Комментарии: 4

Vladimir
15 февраля 2022, 13:15
0
Пытался в валидаторе
'customValidators' => 'reviewValidator'
Не получается вообще не реагирует
if(array_key_exists('message', $validator->fields)) {
    $message = $validator->fields['message'];
    if(strlen($message) > 1000){
       $validator->addError($key,'Слишком много текста'); 
    }
} else {
    $validator->addError($key,'Поле не заполнено');
}
    Артур Шевченко
    15 февраля 2022, 20:28
    0
    А ты делаешь return?
      Vladimir
      16 февраля 2022, 08:02
      0
      да ставил return false; после $validator->addError
    Vladimir
    15 февраля 2022, 13:30
    0
    Решить проблему эту не решил, но можно обойти
    'validate' => 'first__name:required:minLength=^5^:maxLength=^60^,rating:required,message:required:minLength=^10^:maxLength=^1000^,g-recaptcha-response:required'
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      4