Что умеет решение
Модуль упрощает и ускоряет создание форм обратной связи, вынося все настройки в параметры компонента. Решение подходит для редакции «Старт» и других версий, когда требуется простая форма без длительной настройки и сборки в административной панели. В модуль добавлена поддержка Композита.
После установки в папке /bitrix/components/abcwww/ появляется компонент custom.form. Его можно подключить на странице вручную или через визуальный редактор.
Обработка формы в публичной части использует нативный JavaScript, подключение jQuery не требуется. На одной странице можно разместить несколько компонентов, но для каждой формы необходимо указать уникальное значение в параметре «Название формы».
Компонент позволяет создавать настраиваемую форму обратной связи из набора предустановленных полей. В настройках доступны выбор нужных полей, их сортировка и указание обязательных к заполнению. Зарезарезервированные имена для стандартных полей: CF_NAME, CF_PHONE, CF_EMAIL, CF_COMMENT.
Дополнительные поля создаются через атрибут name. Имя поля и его отображаемый текст задаются через разделитель == (пример: COMPANY==Компания). Префикс CF_ добавляется автоматически, поэтому вводить его в настройках не требуется. Имена пользовательских полей не должны совпадать с именами предустановленных.
Поле комментария можно включить в общий список и отсортировать вместе с другими полями. Также доступна опция принудительного вывода этого поля в конце формы после всех остальных текстовых полей, независимо от заданной сортировки.
Поддерживается добавление поля для загрузки файлов с настройкой проверки допустимых типов и максимального размера. Имя поля по умолчанию — CF_FILE. Тип файла по умолчанию ограничен форматом jpg.
При обработке на сервере все данные экранируются. Для полей телефона и email выполняется дополнительная валидация. Включена JavaScript-маска ввода телефона. По умолчанию активна стилизация под Bootstrap 5.
При отправке формы выполняется проверка CSRF-токена.
Антиспам
В настройках компонента можно активировать дополнительный антиспам, который проверяет наличие работающего JavaScript в браузере пользователя и реализует сравнение контрольной строки на стороне сервера и клиента.
Внимание! Если в шаблоне сайта по какой-либо причине не подключены файлы ядра Bitrix (отсутствует вызов метода $APPLICATION->ShowHead() в файле header.php), антиспам будет работать некорректно. В этом случае необходимо отключить соответствующий чекбокс в настройках компонента.
Отправка Email
Предусмотрена настройка включения отправки писем на Email. При установке модуля автоматически создается почтовое событие ABCWWW_CUSTOM_FORM_FILLING с прикрепленным шаблоном, однако можно указать собственное событие. В настройках компонента задается поле получателя; указанный email подхватывается почтовым шаблоном по макросу #EMAIL_TO# (в предустановленном шаблоне макрос #EMAIL_TO# настроен по умолчанию).
Сохранение данных формы
Данные формы сохраняются в системе.
Данные отправленной формы сохраняются в выбранный инфоблок. Список переданных полей записывается в поле «Описание анонса». Для сохранения загруженных файлов в инфоблоке необходимо создать свойство типа «Файл» и указать его символьный код в настройке «Код свойства инфоблока для сохранения файла».
Если «Настраиваемая форма обратной связи» подходит под задачу, General iT поможет установить модуль, настроить его и проверить результат на проекте.