Эти параметры обрабатываются базовым классом FormLister. В контроллерах некоторые общие параметры могут иметь другое назначение.
Задает класс для обработки данных.
Возможные значения - имя php-файла с классом без расширения.
Значение по умолчанию - Form.
Папка в которой находится класс контроллера.
Значение по умолчанию - assets/snippets/FormLister/core/controller/
Имя формы, обязательный параметр.
В шаблоне формы обязательно должно быть скрытое поле с именем formid и значением, указанным в параметре. Форма считается отправленной, если в массиве $_REQUEST присутствует ключ с именем параметра, а его значение соответствует значению параметра.
Определяет способ получения данных запроса:
Возможные значения - post, get, request, имя анонимной функции или метода класса.
Значение по умолчанию - post.
Запрещает отправку формы. Если значение параметра равно 1, то форма не будет считаться отправленной.
Возможные значения - 0, 1.
Значение по умолчанию - 0.
Загрузка параметров в формате json из файла.
Возможные значения - имяфайла:папка, несколько значений разделяются точкой с запятой.
myparams:core - загрузить параметры из файла assets/snippets/FormLister/config/core/myparams.json; myparams - загрузить параметры из файла assets/snippets/FormLister/config/custom/myparams.json; myparams:/assets/myfolder - загрузить параметры из файла assets/myfolder/myparams.json.
Значение по умолчанию - пусто.
Определяет, в каком виде будут выводиться данные.
Возможные значения:
Формат вывода данных для api-режимов 1 или 2.
Возможные значения - json, array.
Значение по умолчанию - json.
Режим отладки. Вывод записывается в лог MODX.
Возможные значения - 0, 1.
Значение по умолчанию - 0.
Сохраняет объект класса FormLister в плейсхолдер, который можно использовать в других сниппетах. Объект сохраняется только при успешной обработке формы.
Возможные значения - имя плейсхолдера.
Значение по умолчанию - пусто.
Убирает экранирование данных, которое выполняет MODX для символов {{, [[ и т.д. При этом экранируются тэги MODX при выводе.
Возножные значения - 0, 1 или имена полей через запятую.
Значение по умолчанию - 0.
Позволяет загружать дополнительные данные из внешних источников, например, для предварительного заполнения полей формы. По умолчанию внешние данные загружаются только при начальном выводе формы и не загружаются после отправки формы Это поведение может быть изменено с помощью параметра keepDefaults.
Возможные значения: список источников, разделенных точкой с запятой. Загрузка данных производится в том порядке, в котором они указаны в списке.
Источник может задаваться в формате "имя:ключ:префикс". Префикс, если указан, добавляется c точкой к имени поля - например, config.sitename. Если префикс заканчивается подчеркиванием (), то вместо точки будет использоваться подчеркивание (user_fullname), чтобы избежать преобразования точки в подчеркивание в PHP (https://www.php.net/manual/ru/language.variables.external.php).
Возможные значения:
Значение по умолчанию - array.
Данные для источника array.
Возможные значения: массив значений по умолчанию, в формате json или php.
Позволяет повторно загружать данные из внешних источников после отправки формы. Если в параметре указан список полей, то загружены будут только указанные поля.
Возможные значения: 1, 0, имена полей, разделенные запятой.
Значение по умолчанию - 0.
Разрешает задавать поля с пустыми значениями.
Возможные значения - 0 или 1.
Значение по умолчанию - 1.
Задает псевдонимы полей. Например, для поля "foo" задан псевдоним "bar":
$FormLister->setField("foo", 10);
$FormLister->getField("bar"); //10
$FormLister->setField("bar", 20);
$FormLister->getField("foo"); //20
$FormLister->unsetField("foo");
$FormLister->getField("foo"); //Пусто
$FormLister->getField("bar"); //Пусто (но если бы было unsetField("foo", false), то поле "bar" осталось бы;
Возможные значения - массив вида:
&fieldAliases=`{
"имя поле":"псевдоним",
"имя поля":"псевдоним"
}
Значение по умолчанию - пусто.
Список полей с управляющими элементами формы (списки, чекбоксы, радио-кнопки). Необходимо для отслеживания состояния элементов.
Возможные значения - имена полей, разделенные запятой.
Значение по умолчанию - пусто.
Этот параметр позволяет решить проблему неотмеченных чекбоксов, которые не включаются в массив полей при отправке формы: если в $_REQUEST отсутствует нужный элемент, то он создается согласно данному параметру. Необходимость в таком параметре возникла в связи с тем, что MODxAPI требует явно указывать изменяемые поля в методе fromArray(). Но можно использовать и в обычных формах, чтобы подставить в шаблон значение неотмеченного чекбокса.
Возможные значения - массив:
&emptyFormControls=`{
"mycheckbox" : "Нет",
"published" : 0
}`
Аналогично параметру prepare в DocLister.
Сниппеты из параметра prepare выполняются после загрузки данных в форму, сниппеты из параметра prepareProcess - после прохождения валидации, сниппеты из параметра prepareAfterProcess - после успешного выполнения обработки. В сниппетах через переменную $FormLister доступен объект контроллера, а через массив $data - значения полей формы. Также доступна переменная $name, которая задержит имя параметра из которого взят сниппет (prepare, prepareProcess и т.д.); это позволяет использовать один и тот же сниппет для разных случаев. Для изменения данных следует использовать в prepare-сниппетах методы контроллера (setField, setFields и т.д.), но можно и просто вернуть массив с измененными данными.
Возможные значения - имена сниппетов, анонимные функции, статические методы загруженных классов.
Значение по умолчанию - пусто.
Имя класса для фильтрации данных. Класс должен быть предварительно загружен.
Значение по умолчанию - \FormLister\Filters.
Массив с правилами фильтрации.
Значение по умолчанию - пусто.
Имя класса для валидации данных. Класс должен быть предварительно загружен.
Значение по умолчанию - \FormLister\Validator.
Массив с правилами валидации.
Значение по умолчанию - пусто.
Имя класса для валидации файлов. Если задано, то класс должен быть загружен заранее.
Значение по умолчанию - \FormLister\FileValidator
Массив с правилами валидации.
Значение по умолчанию - пусто.
Шаблон формы. В шаблоне формы обязательно должно быть поле с именем formid и значением, указанным в параметре formid.
Возможные значения - имя шаблона, указанное по правилам задания шаблонов в DocLister.
Значение по умолчанию - пусто.
Разделитель для преобразования массивов в строку.
Значение по умолчанию - точка с запятой.
Разделитель для преобразования массивов в строку, но для отдельного поля {field}. Например: groups.arraySplitter - разделитель для массива из поля groups.
Если не задано, то используется значение параметра arraySplitter.
Шаблон для вывода сообщений валидатора.
Возможные значения - имя шаблона, указанное по правилам задания шаблонов в DocLister.
Значение по умолчанию:
@CODE:<div class="error">[+message+]</div>
Имена классов для обозначения незаполненных (required) и неверно заполенных (error) полей.
Значение по умолчанию - required и error соответственно.
Позволяет задавать указанные выше классы для конкретных полей.
По умолчанию используются значения параметров requiredClass и errorClass.
Шаблон сообщений обработчика формы. В шаблоне выводятся группы сообщений (messages, required, error).
Возможные значения - имя шаблона, указанное по правилам задания шаблонов в DocLister.
Значение по умолчанию:
@CODE:<div class="form-messages">[+messages+]</div>
Шаблон-обертка для группы произвольных сообщений.
Возможные значения - имя шаблона, указанное по правилам задания шаблонов в DocLister.
Значение по умолчанию -
@CODE: [+messages+]
Шаблон-обертка для группы сообщений о незаполненных полях.
Возможные значения - имя шаблона, указанное по правилам задания шаблонов в DocLister.
Значение по умолчанию:
@CODE: [+messages+]
Шаблон-обертка для группы сообщений о неверно заполненных полях.
Возможные значения - имя шаблона, указанное по правилам задания шаблонов в DocLister.
Значение по умолчанию:
@CODE: [+messages+]
Разделитель сообщений в группе.
Возможные значения - произвольная строка.
Значение по умолчанию:
<br>
Удаляет из шаблонов незаполненные прейслхолдеры.
Возможные значения - 0 или 1.
Значение по умолчанию - 1.
Обрабатывает чанки MODX-парсером.
Возможные значения - 0 или 1.
Значение по умолчанию - 0.
Если параметр parseDocumentSource отключен, то парсит ссылки в шаблонах.
Возможные значения - 0 или 1.
Значение по умолчанию - 0.
Позволяет отключить предварительную обработку полей формы (экранирование значений, преобразование массивов в строки, установка сообщений об ошибках). Можно включить, если для вывода не используется парсер MODX.
Возможные значения - 0 или 1.
Значение по умолчанию - 0.
При включенном параметре skipPrerender позволяет выполнить обработку только ошибок формы с сохранением результатов в массив плейсхолдеров. Для использования сторонних шаблонизаторов.
Возможные значения - 0 или 1.
Значение по умолчанию - 0.
Путь к папке с файлами шаблонов и расширение файлов шаблонов. Эти параметры необходимо задавать при использовании плагина EvoTwig.
Значение по умолчанию - пусто.
Id страницы, на которую нужно выполнить перенаправление после успешной обработки формы. В api-режиме перенаправление не выполняется, но в массиве данных формы сохраняется абсолютная ссылка на целевую страницу (поле "redirectTo").
Вместо числа можно указывать массив:
&redirectTo=`{
"page":10,
"query":{
"foo":"bar"
},
"header":"HTTP/1.1 307 Temporary Redirect"
}`
Ключ page задает id станицы, в массиве query можно передать дополнительные get-параметры, значением ключа header может быть текст заголовка для перенаправления.
Возможные значения - число или массив.
Значение по умолчанию - пусто.