liventin / base.module.result.modifier.injection
Service for inject events before and after result modifier in bitrix components
Installs: 9
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
Type:bitrix-d7-module
Requires
- php: >=8.1
- liventin/base.module: ^1.0.0
Requires (Dev)
- roave/security-advisories: dev-latest
README
Bitrix Base Module |
Bitrix Handlers Service For Base Events |
install | update
"require": {
"liventin/base.module.result.modifier.injection": "@stable"
}
redirect (optional)
"extra": {
"service-redirect": {
"liventin/base.module.result.modifier.injection": "base.module",
}
}
example
// in file /local/templates/.default/components/bitrix/crm.kanban/.default/result_modifier.php defined('B_PROLOG_INCLUDED') || die; /** Bitrix * @var array $arResult * @global CMain $APPLICATION * @var CBitrixComponentTemplate $this */ use Base\Module\Service\Container; use Base\Module\Service\ResultModifier\ComponentEventSender; try { Loader::requireModule('base.module'); /** @var ComponentEventSender $redirect */ $redirect = Container::get(ComponentEventSender::SERVICE_CODE); $redirect->redirectToNextTemplateWithEvents($this, $arParams, $arResult); } catch (Throwable $e) { ShowError($e->getMessage()); }
EventHandler
<?php namespace Base\Module\Handlers; use Base\Module\Src\ResultModifier\Senders\BaseSender; use Bitrix\Main\Event; use Base\Module\Service\Handlers\Handler; class CrmKanbanEvent { #[Handler(module: 'bitrix:crm.kanban', event: BaseSender::AFTER_RESULT)] public static function afterResult(Event $event): void { $arResult = $event->getParameter('arResult'); ..... $event->setParameter('arResult', $arResult); } }