События, на которые подписан модуль
Установка ставит около двадцати пяти регистраций. Здесь перечислены те, чьё отсутствие ломает возможность целиком — и при этом не видно снаружи.
Это важное свойство: пропавший обработчик не даёт ошибки. Очередь просто перестаёт наполняться, зеркало не появляется, меню остаётся русским. Человек ищет причину не там.
Что должно быть зарегистрировано
Имена даны полностью, а не сокращённо: по этой таблице ищут глазами и поиском, когда сверяют её с тем, что реально лежит в таблице связей.
| Модуль | Событие | Что сломается без него |
|---|---|---|
iblock |
OnAfterIBlockElementAdd |
очередь элементов |
iblock |
OnAfterIBlockElementUpdate |
очередь элементов |
iblock |
OnAfterIBlockElementDelete |
очередь элементов |
iblock |
OnAfterIBlockSectionAdd |
очередь разделов |
iblock |
OnAfterIBlockSectionUpdate |
очередь разделов |
iblock |
OnAfterIBlockSectionDelete |
очередь разделов |
iblock |
OnAfterIBlockUpdate |
названия инфоблока и SEO |
iblock |
OnIBlockDelete |
чистка SEO при удалении инфоблока |
iblock |
InheritedProperty::OnAfterAdd |
очередь SEO-шаблонов |
iblock |
InheritedProperty::OnAfterUpdate |
очередь SEO-шаблонов |
iblock |
InheritedProperty::OnDelete |
очередь SEO-шаблонов |
iblock |
OnAfterIBlockPropertyAdd |
языковые свойства |
iblock |
OnAfterIBlockPropertyUpdate |
языковые свойства |
iblock |
OnAfterIBlockPropertyDelete |
языковые свойства |
main |
OnBeforeProlog |
зеркало языка в админке |
main |
OnAdminTabControlBegin |
вкладка перевода в карточке |
main |
OnAdminListDisplay |
кнопки перевода в списке элементов |
main |
OnBuildGlobalMenu |
перевод меню админки |
sale |
OnSaleComponentOrderResultPrepared |
подписи в оформлении заказа |
sale |
OnSaleComponentOrderJsData |
подписи при смене доставки без перезагрузки |
Два события магазина регистрируются, только если модуль магазина установлен. Их отсутствие на сайте без магазина — не поломка.
События SEO-шаблонов — это события ORM ядра, а не обычные события модуля. Ищутся они в той же таблице связей, но записаны иначе.
Как проверить
Экран Проверка стенда, вкладка «Обзор»: он сверяет таблицу связей с этим списком.
Вручную — Настройки → Инструменты → Файлы обработчиков событий.
Почему список именно такой
Проверять все двадцать пять — значит получить длинный перечень, в котором пропажу одной строки никто не заметит. Здесь только то, что ломает возможность целиком.
Список объявлен отдельно от установщика и сверяется с двух сторон: офлайн проверяется, что установщик каждое из этих событий действительно регистрирует, а на стенде — что регистрация дожила до таблицы связей.
Если чего-то не хватает
Почти всегда причина одна: обновление модуля не выполнялось. Состав обработчиков между версиями меняется, и приводит его в порядок именно обновление, а не замена файлов. См. Обновление на бою.