Download the PHP package luckcodes/yii2-events-manager without Composer
On this page you can find all versions of the php package luckcodes/yii2-events-manager. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package yii2-events-manager
Yii 2 Events Manager
Компонент для Yii 2 приложения
Организация подключения событий через компонент: Менеджер событий.
Обработчики событий подключаются только в момент вызова первого события и не нагружают систему.
Установка
Предпочтительный способ установки этого расширения через composer.
Либо запустить
или добавить
в требуемый раздел вашего composer.json
файл.
Подкючение в config файлах
Подключение события вручную
В примере мы подключили для события init_shortcode
класса common\test\BlockTpl
обработчик события ['common\eventhandler\MainBlocksHandler', 'shortcode']
.
Где common\eventhandler\MainBlocksHandler
- это путь к классу обработчика, а shortcode
- метод,
который будет вызван при наступлении события init_shortcode
.
Подключение через дополнительный обработчик
Чтобы не загромождать конфиг файлы большим количеством подключений событий, в менеджере имеется возможность подключения дополнительных обработчиков, которые внутри себя (используя необходимую логику) могут подключать только необходимые события.
Метод подключения собственных обработчиков подключения событий
Класс luckcodes\items\handlers\events\ConnectEventsFrontend
должен быть дочерним класом luckcodes\eventsmanager\classes\AddHandlers
Пример дополнительного обработчика подключения событий
файл: luckcodes\items\handlers\events\ConnectEventsFrontend
Данный класс подключит к событию menu_build
класса common\components\MenuBuilder
обработчик common\modules\item\eventhandler\MenuBuilderComponent
и будет вызван метод addOptionsMenu
.
Поведение
Для удобства в пакет включено поведение luckcodes\eventsmanager\behaviors\EventsManagerBehavior
.
Его необходимо подключить в компонент, который будет генерировать событие.
Берет указанные обработчики события из luckcodes\eventsmanager\components\EventsManager
Если есть обработчик для данного события, то подключает и создает обертку для триггера
Подключение в компоненте
Вызов события через обертку триггера событий