Буквально недавно вышло чудное обновление главного модуля 9.5.10, в котором помимо прочего прилетела одна вкусность, идеологию которой я попытаюсь объяснить. [spoiler] С чего все началось. С открытием Marketplace все больше разработчиков начало создавать свои решения. Но все уперлось в то, что для добавления одной незначительной детали требовалось создавать не только свои модули, но и целые административные страницы, дублирующие уже существующие. Ну, например, чтобы расширить тип баннера своими настройками, нужно создавать свою копию страницы редактирования типа баннера. Мягко говоря, неудобно.
Решить эту проблему (хотя бы как-то) призваны следующие события:
OnAdminContextMenuShow:
OnAdminListDisplay:
(Да, прилетающий массив содержит ссылки на все эти элементы, доступы вы сможете получить к любому, дополнив список, или изменив его. Фактически вам отдается вообще весь контент списка. Возможности безграничны.)
OnAdminTabControlBegin
Все события имеют документацию, где в принципе все понятно объяснено. Я же опишу философию, что ли, применения. Рассмотрю на примере последнего события.
Итак, задача нашего модуля (а эти события прежде всего призваны помогать создавать удобные массовые решения, повторюсь) это снабдить каждый инфоблок настройкой "отправлять уведомления на e-mail об изменениях элементов". Этакий Документооборот на Старте.
Ну все, дело за малым - при добавлении элемента ИБ просто проверяем стоит ли данная галочка - и если стоит, то шлем мыло Это оставляю на домашнее задание.
Остальные события обрабатываются аналогичным образом. Зависит от вашей задачи.
Долганин Антон Я сформировал свое действие AddEventHandler("main", "OnAdminListDisplay", "MyOnAdminListDisplay"); function MyOnAdminListDisplay(&$list) { echo "<pre>"; print_r($list); echo "</pre>"; //echo "<pre>"; print_r($_REQUEST); echo "</pre>";
Группы на сайте создаются не только сотрудниками «1С-Битрикс», но и партнерами компании. Поэтому мнения участников групп могут не совпадать с позицией компании «1С-Битрикс».