TODO
inline-редактирование
Фильтрация (там с пагинацией проблема)
BugFix
Плагин полностью подменяет собой страницу редактирования документа, но при этом имеет кнопку для входа в привычное редактирование.
Все настройки задаются в файле config.inc.php Ниже параметры конфига:
- id - через запятую id документов, где использовать плагин
- name - заголовок
- fields - описание полей (см. ниже)
- orderBy - сортировка по-умолчанию
- button - через @CODE: код кнопки вверху
- prepare - название сниппета-обработчика перед выводом. Принимает и должен возвратить $data
- afterPrepare - название сниппета-обработчика перед сохранением. Принимает и должен возвратить $data
- oneTable - название кастомной таблицы (без префикса)
- allowed_fields - разрешенные поля для редактирования, которых нет в кастомной таблице. Полезно когда имеем дело с json.
- search - строка которая подставляется в filters при поиске по документам и addWhereList при поиске в кастомных таблицах. [+txt_search+] - подставляемое значение
- tplName - название файла (без .tpl) в папке tpls для вывода таблицы. По-умолчанию default
- Ключ - название поля, параметры:
- name - заголовок поля
- sortable - сортируемый столбец или нет (true/false)
- align - выравнивание содержимого (left/center/right)
- width - ширина столбца в пикселях
- hidden - скрывать столбец или нет (true/false) - необходимо в тех случаях, когда нужно поле для редактирования, но не нужно выводить в самой таблице
type - тип поля, принимает следующие значения:
- image - задает поле для загрузки файла, выводит миниатюру в таблице
- file - задает поле для загрузки файла
- checkbox - выводит одиночный чекбокс, принимает и отправляет булево значение
- text-break - в таблице выдает текст с переносами, при редактировании задает textarea
- date - в таблице форматирует unixtime в d.m.Y, при редактировании задает календарик
- select - при редактировании создает select из значений, идущих в elements в стандартном варианте MODX: значение1==заголовок1||значение2==заголовок2||etc
- По умолчанию - текст.
Данный плагин можно также использовать в модуле для редактирования кастомной таблицы. Пример редактирования лога MODX (файл конфигурации в config.example.inc):
?>
<html>
<head>
<link rel="stylesheet" type="text/css" href="media/style/default/style.css">
</head>
<body>
<?php
include(MODX_BASE_PATH.'assets/plugins/easyCollection/classes/easyCollection.class.php');
$ec = new easyCollection($modx);
$ec->setCurrentConfig(0,-1); // 0 - порядковый номер конфигурации, -1 - это id документа, на котором должен срабатывать
$ec->getTable();
?>
</body>
</html>