Перейти к основному содержимому

События настроек модуля

[OnBeforeAllOptionsBuild] Событие для создания своих табов в настройках модуля

//файл /bitrix/php_interface/init.php

//подписываемся на событие
\Bitrix\Main\EventManager::getInstance()->addEventHandler(
'rbs.moysklad',
'OnBeforeAllOptionsBuild',
'OnBeforeAllOptionsBuildHandler'
);

function OnBeforeAllOptionsBuildHandler(\Bitrix\Main\Event $event)
{
//получаем параметры события
$eventParams = $event->getParameters();

//массив всех опций модуля
$arAllOptions = $eventParams['arAllOptions'];
//массив вкладок для работы опций
$aTabs = $eventParams['aTabs'];

//Пример добавления кастомных опций
//Далее стандартным способом для битриксовых модулей добавляем табы и параметры
$arAllOptions['custom_tab'][] = 'Custom tab';
$arAllOptions['custom_tab'][] = ["custom_option", "Custom option", '', ['checkbox', "N"]];

$aTabs[] = [
"DIV" => "custom_tab",
"TAB" => 'Custom tab',
"ICON" => "custom_tab",
"TITLE" => 'Custom tab'
];

//$result оставляем всегда таким перед возвращением результата события
$result = [
'arAllOptions' => $arAllOptions,
'aTabs' => $aTabs
];

//возвращаем SUCCESS если нужно поменять массив опций
return new \Bitrix\Main\EventResult(\Bitrix\Main\EventResult::SUCCESS, $result);
}

Результат работы события:

Кастомный таб в настройках модуля

[OnBeforeWebHookOptionsBuild] Событие для вывода веб-хуков в соответствующей вкладке

//файл /bitrix/php_interface/init.php

//подписываемся на событие
\Bitrix\Main\EventManager::getInstance()->addEventHandler(
'rbs.moysklad',
'OnBeforeWebHookOptionsBuild',
'OnBeforeWebHookOptionsBuildHandler'
);

function OnBeforeWebHookOptionsBuildHandler(\Bitrix\Main\Event $event)
{
//возвращаем массив такого вида:
// 'result' => [...] - у массива единственный ключ - result,
// внутри result идет массив такой структуры:
// 'entity' => ['UPDATE', 'CREATE', ...],
// где 'entity' - сущность в МС, на которое подписываем веб-хук
// массив у ключа сущности это три событя веб-хука 'UPDATE', 'CREATE', 'DELETE'

return new \Bitrix\Main\EventResult(\Bitrix\Main\EventResult::SUCCESS, [
'result' => [
'move' => ['CREATE', 'UPDATE'],
'supply' => ['UPDATE', 'DELETE'],
'purchaseorder' => ['CREATE'],
'demand' => ['UPDATE']
]
]);
}

В результате работы события во вкладке "веб-хуки" появятся новые веб-хуки, которые подчиняются общим правилам обработки веб-хуков в модуле.

Кастомные веб-хуки