Веб-форма (комплексный компонент)
Комплексный компонент, создавая физически только одну страницу, позволяет получить несколько страниц: заполнение веб-формы, со списком результатов, редактирование результата, просмотр результата и т.д. Компонент стандартный и входит в дистрибутив модуля.
Пример вызова
<?$APPLICATION->IncludeComponent("bitrix:form","",Array(
"AJAX_MODE" => "Y",
"SEF_MODE" => "Y",
"WEB_FORM_ID" => $_REQUEST["WEB_FORM_ID"],
"RESULT_ID" => $_REQUEST["RESULT_ID"],
"START_PAGE" => "new",
"SHOW_LIST_PAGE" => "Y",
"SHOW_EDIT_PAGE" => "Y",
"SHOW_VIEW_PAGE" => "Y",
"SUCCESS_URL" => "",
"SHOW_ANSWER_VALUE" => "N",
"SHOW_ADDITIONAL" => "N",
"SHOW_STATUS" => "Y",
"EDIT_ADDITIONAL" => "N",
"EDIT_STATUS" => "Y",
"NOT_SHOW_FILTER" => "",
"NOT_SHOW_TABLE" => "",
"CHAIN_ITEM_TEXT" => "",
"CHAIN_ITEM_LINK" => "",
"IGNORE_CUSTOM_TEMPLATE" => "N",
"USE_EXTENDED_ERRORS" => "N",
"CACHE_TYPE" => "A",
"CACHE_TIME" => "3600",
"AJAX_OPTION_NOSHADOW" => "N",
"AJAX_OPTION_NOJUMP" => "Y",
"AJAX_OPTION_NOSTYLE" => "N",
"SEF_FOLDER" => "/communication/web-forms/",
"SEF_URL_TEMPLATES" => Array(
"new" => "#WEB_FORM_ID#/",
"list" => "#WEB_FORM_ID#/list/",
"edit" => "#WEB_FORM_ID#/edit/#RESULT_ID#/",
"view" => "#WEB_FORM_ID#/view/#RESULT_ID#/"
),
"VARIABLE_ALIASES" => Array(
"new" => Array(),
"list" => Array(),
"edit" => Array(),
"view" => Array(),
)
)
);?>
Описание параметров
Основные параметры
- START_PAGE
- Выбирается начальная страница:
- list - страница со списком результатов данной формы;
- new - страница добавления результата, т.е. будет представлена выбранная веб-форма для заполнения.
- SHOW_LIST_PAGE
- Если значение параметра START_PAGE равно new, то при отмеченной опции пользователь после заполнения результата будет переведен на страницу со списком результатов.
Если же в качестве начальной страницы указано list, то вне зависимости от этой опции выведется страница результатов. - SHOW_EDIT_PAGE
- При отмеченной опции на странице со списком результатов будет присутствовать ссылка Изменить на редактирование результата.
Примечание: количество записей на странице со списком результатов зависит от прав доступа пользователя, установленных в настройках формы и в настройках ее статуса.
- SHOW_VIEW_PAGE
- При отмеченной опции на странице со списком результатов будет присутствовать ссылка на просмотр результата.
Примечание: количество записей на странице со списком результатов зависит от прав доступа пользователя, установленных в настройках формы и в настройках ее статуса.
- SUCCESS_URL
- Путь к странице с сообщением об успешной отправке результата формы. Используется при отправке результата пользователем без прав редактирования результата.
Источник данных
- WEB_FORM_ID
- Идентификатор веб-формы.
- RESULT_ID
- Идентификатор результата заполнения формы. По умолчанию указано $_REQUEST["RESULT_ID"], но также может быть записан php-код, возвращающий RESULT_ID.
Внешний вид
- SHOW_ANSWER_VALUE
- Вывод для показа значение параметра ANSWER_VALUE вопроса веб-формы (выводится рядом со значением ответа).
- SHOW_ADDITIONAL
- Вывод дополнительных полей формы при их наличии.
- SHOW_STATUS
- Отображение статуса текущего результата на странице со списком результатов.
- EDIT_ADDITIONAL
- Вывод дополнительных полей на редактирование.
- EDIT_STATUS
- При установленной флаге и с учётом того, что значение параметра SHOW_STATUS равно Y, будет отображена форма смены статуса. Список доступных статусов в форме зависит от прав доступа, установленных для данной группы в настройках статусов формы.
- NOT_SHOW_FILTER
- Указываются коды полей, которые нельзя показывать в фильтре. Можно исключить те поля веб-формы, которые не должны отображаться в фильтре на странице со списком результатов.
Примечание: чтобы поле отображалось в фильтре на странице со списком результатов, для данного вопроса должна быть заполнена закладка Фильтр в форме редактирования вопроса веб-формы в расширенном режиме.
- NOT_SHOW_TABLE
- Указываются коды полей, которые нельзя показывать в таблице. Можно исключить те поля веб-формы, которые не должны отображаться в таблице на странице со списком результатов веб-формы.
- IGNORE_CUSTOM_TEMPLATE
- При отмеченной опции для отображения веб-формы будет использоваться шаблон формы по умолчанию, даже если создан свой шаблон.
- USE_EXTENDED_ERRORS
- При отмеченной опции будет использован расширенный вывод сообщений об ошибках.
Управление адресами страниц
- SEF_MODE
- При установленном флаге включается поддержка ЧПУ и становятся доступными поля настройки адресов ЧПУ.
- SEF_FOLDER
- Каталог ЧПУ: путь до папки, с которой работает компонент. Этот путь может как совпадать с физическим путём, так и не совпадать.
- SEF_URL_TEMPLATES
- Указываются адреса следующих страниц:
- new - добавление результата;
- list - список результатов;
- edit - редактирование результата;
- view - просмотр результата.
- VARIABLE_ALIASES
- Имена переменных, в которых передаются названия действий.
Управление режимом AJAX
- AJAX_MODE
- Включение режима AJAX.
- AJAX_OPTION_NOSHADOW
- При выборе значения Y не будет происходить затенения формы при сохранении результатов ее заполнения.
- AJAX_OPTION_NOJUMP
- Отключение прокрутки к началу компонента в публичной части при сохранении результата заполнения веб-формы.
- AJAX_OPTION_NOSTYLE
- Отмена подгрузки стилей.
Настройки кеширования
- CACHE_TYPE
- Тип кеширования:
- A - Авто: действует при включенном кешировании в течение заданного времени;
- Y - Кешировать: необходимо определить время кеширования;
- N - Не кешировать: кеширования нет в любом случае.
-
- CACHE_TIME
- Время кеширования, указанное в секундах.
Дополнительные настройки
- CHAIN_ITEM_TEXT
- Название дополнительного пункта в навигационной цепочке (если оставить незаполненным, то в навигационную цепочку пункт не добавляется).
- CHAIN_ITEM_LINK
- Можно задать ссылку, которая будет показана на дополнительном пункте меню в навигационной цепочке.