Решение: Как сделать проверку на минимальное количество символов в топике

В конфиге движка есть настройка:
$config['module']['topic']['max_length'] = 25000;       // Максимальное количество символов в одном топике


А вот такой же для минимальной нету. По умолчанию для всех-всех полей оно равно 2 и записывается хардкодом. Вот подсказка, для тех, кому нужна эта настройка.

Выносим параметр в конфиг:

Добавляем строку:
$config['module']['topic']['min_length'] = 550;       // Минимальное количество символов в одном топике


Инитим валидатор:

открываем /classes/modules/topic/entity/Topic.entity.class.php
Смотрим комментарии и ковыряем метод public function Init()

топик/фотосет:
$this->aValidateRules[]=array('topic_text_source','string',
'max'=>Config::Get('module.topic.max_length'), // максимум из конфига
'min'=>Config::Get('module.topic.min_length'), // минимум из конфига
'allowEmpty'=>false,'label'=>$this->Lang_Get('topic_create_text'),
'on'=>array('topic','photoset'));


ссылка:
$this->aValidateRules[]=array('topic_text_source','string',
'max'=>5000, // максимум хардкод
'min'=>10, // минимум хардкод
'allowEmpty'=>false,
'label'=>$this->Lang_Get('topic_create_text'),
'on'=>array('link'));


опрос:
$this->aValidateRules[]=array('topic_text_source','string',
'max'=>5000, // максимум хардкод
'allowEmpty'=>true, // хардкод (текст топика в опросе можно не задавать)
'label'=>$this->Lang_Get('topic_create_text'),
'on'=>array('question'));

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.