home chevron_right
Фокус: мастер (wizard) и редакторы — входы/выходы actions, шаги/шаблоны, права/кеш

В SF4 под “инструментами управления” обычно понимают две связанные части:

  1. Wizard (универсальный мастер) — механизм, который ведёт пользователя по шагам и на каждом шаге выполняет “действие” (action). Действие может быть мгновенным (один запуск) или “пошаговым/длинным” (выполняется в цикле, малыми порциями), чтобы не упираться в таймауты и не перегружать сервер.

  2. Редакторы (админ-страницы и публичные формы) — интерфейсы, которые дают безопасный доступ к настройкам и данным: конфиги уровней (site/section/page/demo), редактирование секций/элементов инфоблоков, управление блоками/раскладкой.

Ключевая идея, которая объединяет оба мира: данные передаются через “хранилище” мастера и/или через конфигурации SF4, а единицей работы в мастере является action, у которой есть:

  • вход: data_input_code (откуда взять массив из $arResult["DATA"][...])
  • выход: data_output_code (куда положить результат в $arResult["DATA"][...])
  • параметры: parameter (структура зависит от конкретного действия)
  • контроль поведения UI: prev_disable (запрет “Назад”), autocomplete (автопереход к следующему действию)

По “семействам” действия обычно группируются так:

  • file.* — операции с файлами/папками (копирование, удаление, распаковка/упаковка, массовые переименования).
  • data.* — перенос массивов (получить данные от пользователя/из конфига, импорт/экспорт массива в файл).
  • option.* — экспорт/импорт настроек модулей (чтение/запись опций).
  • site.* — экспорт/импорт сайтов.
  • iblocktype.* — экспорт/импорт типов инфоблоков.
  • iblock.* — экспорт/импорт инфоблоков (обычно через архивы).
  • usergroup.* — экспорт/импорт групп пользователей.
  • вспомогательные (например, cut.names / restore.names как пара “операция + откат” для массовых переименований).