Документация для разработчиков

Список терминов

Иерархическая схема сущностей модуля

Веб-форма
Синонимами (реализациями) данного термина можно считать такие сущности, как "анкета" и "опросный лист". Веб-форма представляет из себя совокупность:

Веб-форма может быть выведена на экран, заполнена и сохранена в виде результата.

На веб-форму можно установить различные права доступа для групп пользователей:

  • 1 - доступ закрыт (форма и ее результаты полностью недоступны);
  • 10 - заполнение формы (посетитель может только заполнить и сохранить форму);
  • 15 - редактирование своего результата (посетитель получает возможность видеть список своих результатов, который он может фильтровать и сортировать; также посетитель может просмотреть, изменить и удалить свой результат);
  • 20 - просмотр всех результатов (посетитель получает возможность просмотра всех активных результатов);
  • 25 - редактирование всех результатов и просмотр настроек формы (посетитель получает возможность просмотра и редактирования всех результатов в зависимости от их статусов, а также, если у него открыт доступ к административной части модуля - доступ на просмотр настроек формы);
  • 30 - полный доступ (включает в себя все вышеописанные права, а также право на изменение настроек формы).
Один пользователь может обладать только одним из вышеприведенных прав доступа (которое является для него максимальным).

К веб-форме можно приписать ряд почтовых шаблонов, по которым будут создаваться почтовые события при заполнении и сохранении веб-формы.

Поле
При заполнения веб-формы выводятся только вопросы и ответы на них. Когда пользователь заполнит веб-форму и нажмет кнопку Сохранить, значения ответов будут сохранены в виде результата. Зачастую возникает необходимость в расчёте и сохранении какой либо величины на основе данных, полученных от пользователя, заполнившего веб-форму. Для хранения подобных рассчитанных величин предназначена данная сущность - поле веб-формы.


Вопрос
Представляет из себя совокупность:
  • непосредственно текста вопроса;
  • типа текста вопроса [text|html];
  • изображение вопроса;
  • списка ответов;
  • настроек, связанных с отображением вопроса в списке результатов;
  • настроек, связанных с отображением полей для фильтрации результатов по значениям ответов на данный вопрос.

Ответ
Каждый вопрос веб-формы подразумевает набор HTML-полей предназначенных для ввода ответа на данный вопрос. Каждое такое HTML-поле является ответом. Таким образом, ответ (в терминологии данного модуля) подразумевает совокупность таких понятий как:
  • параметр ANSWER_TEXT (выводится рядом с HTML полей в качестве подписи к этому полю);
  • параметр ANSWER_VALUE (используется для внутренних служебных целей, например, при расчёте значений полей веб-формы);
  • тип, который может принимать следующие значения:
    • text - однострочное текстовое поле;
    • textarea - многострочное текстовое поле;
    • radio - переключатель одиночного выбора (radio-кнопка);
    • checkbox - флаг множественного выбора (checkbox);
    • dropdown - элемент выпадающего списка одиночного выбора;
    • multiselect - элемент списка множественного выбора;
    • date - поле для ввода даты;
    • image - поле для загрузки изображения;
    • file - поле для загрузки произвольного файла;
    • password - поле для ввода пароля.
  • ширина;
  • высота;
  • дополнительные параметры.
Результат
После того, как пользователь заполнит веб-форму и нажмет Сохранить, все значения ответов будут сохранены в базу данных в виде результата. Если разработчик предусмотрит использование полей, то предварительно рассчитанные значения этих полей могут быть также записаны в результат. Каждый результат в обязательном порядке должен обладать тем или иным статусом, регулирующим права доступа к данному результату. Таким образом, результат - это совокупность:
  • значений ответов на вопросы веб-формы;
  • значений полей веб-формы;
  • значения статуса.
Статус
Основная задача статуса - разграничение прав доступа на результат для каждой из групп пользователей.

Права доступа для статуса могут быть следующих видов:

  • VIEW - право на просмотр результатов в данном статусе;
  • MOVE - право на перевод результатов в данный статус;
  • EDIT - право на редактирование результатов в данном статусе;
  • DELETE - право на удаление результатов в данном статусе.

Один пользователь может обладать одним и более из вышеперечисленных прав доступа.

Таким образом, каждый результат в обязательном порядке должен иметь тот или иной статус. При создании нового результата, его новый статус будет равен статусу, в настройках которого установлен флаг Присваивать данный статус всем новым документам по умолчанию.

Валидатор

Валидатор - это набор функций, предназначенных для проверки соответствия дополнительным условиям значений ответов на вопросы формы.

Для каждого валидатора задается список типов вопросов, к которым применим данный валидатор. К вопросам, содержащим ответы разных типов валидаторы не могут быть применены.

Существует возможность создавать собственные валидаторы с любой функциональностью для любых типов полей. Подробнее см. руководство по созданию валидаторов.



Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2020, «1С-Битрикс», 2020
Наверх