Здесь показаны различия между двумя версиями данной страницы.
Следущая версия | Предыдущая версия | ||
eaze:panda:работа_с_vt [2011/09/12 14:44] sergeyfast создано |
eaze:panda:работа_с_vt [2014/01/09 17:48] (текущий) conwell [Проверка пользовательского ввода в VT] |
||
---|---|---|---|
Строка 17: | Строка 17: | ||
$this->originalObject->tagId = -1; | $this->originalObject->tagId = -1; | ||
} | } | ||
- | $objects = parent::$factory->Get( array( "columnNumber" => $object->columnNumber, "notTagId" => $this->originalObject->tagId ), array( OPTION_HIDE_DISABLED => true ) ); | + | $objects = parent::$factory->Get( array( "columnNumber" => $object->columnNumber, "notTagId" => $this->originalObject->tagId ), array( BaseFactory::WithoutPages => true ) ); |
if( !empty( $objects ) ) { | if( !empty( $objects ) ) { | ||
$errors["fields"]["columnNumber"]["unique"] = "unique"; | $errors["fields"]["columnNumber"]["unique"] = "unique"; | ||
Строка 23: | Строка 23: | ||
} | } | ||
</code> | </code> | ||
- | Где columnNumber – то поле, которое нужно проверить, tagId – primary key, notTagId – дополнительный поиск на SEARCHTYPE_NOT_EQUALS в Factory. | + | Где columnNumber – то поле, которое нужно проверить, tagId – primary key, notTagId – дополнительный поиск по полю tagId |
+ | с типом поиска SEARCHTYPE_NOT_EQUALS, который необходимо добавить в MFD. | ||
==== Задание ==== | ==== Задание ==== | ||
Строка 40: | Строка 41: | ||
==== Index.tmpl.php – шаблоны списка ==== | ==== Index.tmpl.php – шаблоны списка ==== | ||
- | ''td class="(header|left)"'' в выводе объектов. | + | Для изменения внешнего вида ячеек таблицы можно использовать предопределенные классы **header** или **left**: |
+ | <code php><td class="(header|left)"></code> | ||
{{:eaze:panda:panda_list_class.png?|}} | {{:eaze:panda:panda_list_class.png?|}} | ||
+ | |||
+ | ==== Index.tmpl.php – объединение ячеек ==== | ||
+ | Для объединения ячеек таблицы нужно изменить значение colspans в массиве $grid. | ||
+ | <code php>"сolspans" => array( 0 => 2 )</code> | ||
+ | <code php><td><span class="status (green|blue|red)">{$object.categoryId}</span></td></code> | ||
+ | |||
+ | {{:eaze:panda:panda_list_colspan.png?|}} | ||
+ | |||
==== Index.tmpl.php – булевые значения ==== | ==== Index.tmpl.php – булевые значения ==== | ||
- | В комментариях поле «Пост модерация». | + | В Panda есть готовый способ отображения логических значений в таблице: |
<code php><td><?= StatusUtility::GetBoolTemplate( $object->isPostModerated ) ?></td></code> | <code php><td><?= StatusUtility::GetBoolTemplate( $object->isPostModerated ) ?></td></code> | ||
+ | Используйте этот шаблон для изменения внешнего вида поля «Пост модерация» в списке комментариев. | ||
+ | |||
{{:eaze:panda:panda_list_bool.png?|}} | {{:eaze:panda:panda_list_bool.png?|}} | ||
Строка 53: | Строка 65: | ||
===== Проверка пользовательского ввода в VT ===== | ===== Проверка пользовательского ввода в VT ===== | ||
Для тех данных, которые вводит пользователь на сайте и они отображаются в VT, нужно применять фильтрацию. Например, в списке комментариев. | Для тех данных, которые вводит пользователь на сайте и они отображаются в VT, нужно применять фильтрацию. Например, в списке комментариев. | ||
- | <code php><td>{form: $object.author}</td> | + | <code php><td>{form:$object.author}</td> |
<td>{form:$object.email}</td> | <td>{form:$object.email}</td> | ||
<td>{form:$object.comment}</td></code> | <td>{form:$object.comment}</td></code> | ||
- | ''{form:$var}'' вызывает функцию ''HtmlHelper::RenderToForm( $var )'', которая в свою очередь вызывает'' htmlspecialchars'' (см. Template.php и HtmlHelper.php). | + | ''{form:$var}'' вызывает функцию ''HtmlHelper::RenderToForm( $var )'', которая в свою очередь вызывает'' htmlspecialchars'' (см. Template.php и HtmlHelper.php). Для вывода массива можно использовать такой вид - ''{form:$array[key]}''. |
==== Задание ==== | ==== Задание ==== |