====== Работа с VT ======
===== Проверки =====
В стандартных Save*Action для VT валидация осуществляется в методе ''validate()''. Метод возвращает массив ошибок (структуру можно посмотреть через ''var_dump''). Базовые проверки уже заложены в систему – это проверка на is_null, empty, strlen. Они настраиваются в MFD (по умолчанию создаются из схемы базы данных).
Остальные проверки реализуются отдельно в этом методе. Для проверки почты можно использовать метод ''MailFactory::CheckMXHost()'':
if ( !empty( $object->email ) && MailFactory::CheckMXHost ( $object -> email ) == false ) {
$errors['fields']['email']['format'] = "format";
}
Для проверки на уникальность какого-либо поля можно использовать следующий код:
if( !empty( $object->columnNumber ) ) {
if( empty( $this->originalObject->tagId ) ) {
$this->originalObject->tagId = -1;
}
$objects = parent::$factory->Get( array( "columnNumber" => $object->columnNumber, "notTagId" => $this->originalObject->tagId ), array( BaseFactory::WithoutPages => true ) );
if( !empty( $objects ) ) {
$errors["fields"]["columnNumber"]["unique"] = "unique";
}
}
Где columnNumber – то поле, которое нужно проверить, tagId – primary key, notTagId – дополнительный поиск по полю tagId
с типом поиска SEARCHTYPE_NOT_EQUALS, который необходимо добавить в MFD.
==== Задание ====
Реализовать проверки для следующих объектов:
- Новости
- Ссылка – проверка на то, что ссылка существует; проверка на уникальность.
- Email – проверка CheckMXHost.
- Категории
- Системное имя – проверка на уникальность.
- Комментарии
- IP
===== Стили =====
В шаблонах существуют несколько стандартных стилей, с помощью которых можно «причесать» внешний вид.
==== Index.tmpl.php – шаблоны списка ====
Для изменения внешнего вида ячеек таблицы можно использовать предопределенные классы **header** или **left**: