Любое множество форм обратной связи обязательно содержит в своей структуре что-то общее, будь то визуальный элемент, или функция. Однако, каждый раз при создании нового приложения, такие элементы или функции также создаются заново, что не всегда удобно и может занимать некоторое время.

В связи с этим разработчики компонента Chronoforms 6 предложили свое решение — возможность кастомизации стандартных инструментов с целью их неоднократного применения в одном или сразу нескольких проектах. Новый инструмент так и называется — блоки (blocks). Он имеет свою панель управления и конструктор, механизмы резервного копирования и восстановления.

Вновь создаваемая форма может целиком состоять из таких «кубиков». Таким образом, блоки на формах обратной связи Chronoforms 6 могут служить своеобразным строительным материалом для создания новых проектов.

Панель управления блоками Chronoforms 6

Панель управления блоками Chronoforms 6 открывается при выборе пункта «Блоки» (Blocks) главного меню административной панели компонента. Внешний вид их обеих во многом похож.

Блоки на формах обратной связи Chronoforms 6

Рис. 1

  1. Селектор — флажок, который используется при выборе блока для его последующего копирования или удаления.
  2. «Заголовок» (Title) — название блока. Могут использоваться как латинские, так и кириллические символы, цифры. Не является идентификатором блока.
  3. «ID блока» (Block ID) — уникальный идентификатор блока, который присваивается при создании блока. Заполнение этого поля необязательно. Служит для вызова блока с помощью шоткода {block:block_id[.view_name]}
  4. «Тип» (Type) — тип, устанавливаемый веб-мастером при создании блока. Их два: «views» — визуальные элементы (поля ввода input, текстовые и т. д.) и «functions» — функции-обработчики событий формы. Далее визуальные элементы, соответствующие созданным блокам, отображаются в репозиториях конструктора форм в зависимости от своего типа — во вкладках «Представления» (views) или «Функции» (actions) (см. рис. 2).
  5. «Группа» (Group). Помимо группировки по типам, в компоненте предусматривается дополнительная пользовательская группировка (необязательно), которая служит для удобства представления блоков в репозиториях конструктора форм (см. рис. 3).
  6. «Включено» (Enabled) / «Включено» (Enabled). Если установить этот переключатель в положение «Отключено», то не будет возможности размещать блоки или подключать их на форме с помощью «Stored Block». На отображение и функционирование блоков, уже включенных в состав сохраненных форм, положение переключателя никак не влияет.
  7. «Создать» (New) — кнопка создания блока при выборе одного из 2-х вариантов — «Блок представлений» (views block) или «Блок функций» (functions block). От их выбора зависит тип окна конструктора. Редакторы представлений и функций отличаются друг от друга, и после генерации блока и открытия окна конструктора изменить его тип нельзя.
  8. «Удалить» (Delete) — удаление блоков из базы элементов. Никак не повлияет на формы, где блоки были размещены напрямую, но вызовет ошибки из-за их отсутствия, если блоки были подключены с помощью элементов-ссылок «Stored Block».
  9. «Копировать» (Copy) — кнопка создания копий в базе блоков.
  10. «Резервная копия» (Backup) — создание файла резервной копии блока (или блоков) с расширением .cf6block.
  11. «Восстановить» (Restore) — восстановление блока (или блоков) из файла резервной копии. Механизм создания и восстановления блоков такой же, как и у форм.

Конструктор блоков Chronoforms 6

Конструктор блоков Chronoforms 6 (или редактор) представлен в двух вариантах, в зависимости от типа блока, выбранного пользователем на этапе генерации. Соответственно, тип конструктора выбирается для каждого блока однократно и в дальнейшем изменить его будет нельзя.

Созданный блок располагается в репозитории конструктора формы обратной связи согласно своему типу (см. рис. 2).

Конструктор блоков Chronoforms 6

Рис. 2

Окно редактора состоит из двух страниц.

Главная страница — «Основные настройки» (General), для обоих типов блоков одинакова и включает следующие настройки:

Страница основных настроек в конструкторе блоков Chronoforms 6

Рис. 3

  1. «Заголовок» (Title) — наименование блока. Может включать кириллические, пробельные символы, цифры. Отображается, как название визуального элемента блока во вкладке «Ещё…» (More) в конструкторе формы (см. рис. 3).
  2. «Уникальный ID блока» (Block unique id) — идентификатор, который используется для вызова блока с помощью команды chrono syntax {block:block_id[.view_name]}. Поле не является обязательным.
  3. «Группа» (Group) — пользовательская группировка используется только для визуального представления блоков в репозиториях конструктора форм (см. рис. 3). Поле не является обязательным.
  4. «Опубликовано» (Published) — селектор, отвечающий за включение/отключение блока в конструкторе форм. (см. выше, «Панель управления блоками Chronoforms 6» п. 6).
  5. «Описание» (Description) — описание блоков используется для отображения в списке панели управления блоками, а также во всплывающей подсказке соответствующего ему визуального элемента в конструкторе формы (см. рис. 3. п. 5). В связи с этим есть ограничения на ввод текста в данное поле, подобные ограничениям на ввод текстов в атрибутах title, alt. Спецсимволы лучше экранировать. В противном случае при попытке непосредственного размещения такого блока на форме, может возникать ошибка парсинга. Поле также не является обязательным.

Страница «Редактор» (Editor) для типов «views» и «functions» будет отличаться набором функционала.

Для типа «views» она будет содержать весь инструментарий Chronoforms 6 для создания визуальных элементов форм (см. рис. 4), для «functions» — все, что нужно для создания функционала, т. е. серверной части формы (см. рис. 5).

Редактирование блоков Chronoforms 6 с типом views

Рис. 4

Редактирование блоков Chronoforms 6 с типом functions

Рис. 5

Размещение блоков на формах обратной связи Chronoforms 6

Размещение блоков на формах обратной связи Chronoforms 6 осуществляется двумя способами.

Первый способ — непосредственное размещение блока на форме.

Для того, чтобы разместить блок «views» или «functions», нужно перейти во вкладку «Представления» или «Функции», соответственно. Затем открыть в репозитории слева вкладку «Ещё…» (More…), выбрать блок и перетащить его мышью в нужное место на форме.

Этот процесс ничем не отличается от процесса размещения любых других, стандартных элементов при редактировании форм.

Размещение блоков 
 напрямую на формах Chronoforms 6

Рис. 6

Второй способ — подключение блока с помощью визуального элемента «Stored Block» в конструкторе формы.

Для этого нужно перейти во вкладку «Представления» / «Функции» в редакторе формы, открыть группу «Custom» / «Basic» во вкладке «Ядро» (Core) репозитория слева, выбрать и перетащить оттуда мышью в нужную область формы элемент «Stored Block» и открыть его для редактирования. Он имеет всего одно поле для выбора блока из подгружаемого списка.

Размещение блоков 
  на формах Chronoforms 6 с помощью Stored Block

Рис. 7