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

RegisterModuleDependences

RegisterModuleDependences(
 string from_module_id,
string MESSAGE_ID,
string to_module_id,
string to_class = "",
string to_method = "",
int sort = 100, TO_PATH="", TO_METHOD_ARG = array() );

Регистрирует обработчик события. Выполняется один раз (при установке модуля) и этот обработчик события действует до момента вызова события UnRegisterModuleDependences.

Аналог функции в новом ядре: Bitrix\Main\EventManager::registerEventHandler .

Параметры функции

ПараметрОписание С версии
from_module_id Идентификатор модуля, который будет инициировать событие.
MESSAGE_ID Идентификатор события.
to_module_id Идентификатор модуля, содержащий функцию-обработчик события.
to_class Класс принадлежащий модулю module, метод которого является функцией-обработчиком события.
Необязательный параметр. По умолчанию - "" (будет просто подключен файл /bitrix/modules/to_module_id/include.php).
to_method Метод класса to_class являющийся функцией-обработчиком события.
Необязательный параметр. По умолчанию - "" (будет просто подключен файл /bitrix/modules/to_module_id/include.php).
sort Очередность (порядок), в котором выполняется данный обработчик (обработчиков данного события может быть больше одного).
Необязательный параметр, по умолчанию равен 100.
3.0.10
TO_PATH Необязательный параметр, по умолчанию пустой.5.1.0
TO_METHOD_ARG Массив аргументов для функции-обработчика событий.
Необязательный параметр.
8.5.0

См. также

Примеры использования

<?
// Для того, чтобы при удалении пользователя сайта
// производилась соответствующая очистка данных форума,
// при установке форума выполняется регистрация нового
// обработчика события "OnUserDelete" модуля main.
// Этим обработчиком является метод OnUserDelete класса CForum модуля forum.

RegisterModuleDependences("main", "OnUserDelete", "forum", "CForum", "OnUserDelete");
?>


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

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

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

Добавлять комментарии могут только зарегистрированные пользователи. Сообщения для просмотра появляются после модерации.
0
Дмитрий Кубицкий
Задача: Добавить выполнение функции на событие в своем модуле для Marketplace

Решение:

Код
//Работа с базой данных при установке

function InstallDB($arModuleParams = array()) 
{
   RegisterModule("mymodule");
   RegisterModuleDependences("iblock", "OnBeforeIblockElementAdd", "mymodule", "CMyModuleClass", "MyTriggerFunction");

        ...
}
...

//Работа с базой данных при деинсталляции модуля

function UnInstallDB()
{
   COption::RemoveOption("mymodule");
   UnRegisterModuleDependences("iblock", "OnBeforeIblockElementAdd", "mymodule", "CMyModuleClass", "MyTriggerFunction");
   UnRegisterModule("mymodule");
   
   return true;
}
0
Антон Долганин
Следует указать, что данный метод тяжеловат для обычного использования: http://dev.1c-bitrix.ru/community/forums/messages/forum6/topic28942/message159479­/#message159479
© «Битрикс», 2001-2018, «1С-Битрикс», 2018
Наверх