panlatent/craft-event-register

Installs: 57

Dependents: 1

Suggesters: 0

Security: 0

Stars: 0

Watchers: 1

Forks: 0

Open Issues: 0

Type:yii2-extension

pkg:composer/panlatent/craft-event-register

dev-main 2024-05-23 08:30 UTC

This package is auto-updated.

Last update: 2025-11-23 11:31:02 UTC


README

Use a modern way to centrally register events in your CraftCMS app

Requirements

  • PHP 8.0.2 or later.

Installation

Then tell Composer to load the library

composer require panlatent/craft-event-register

Usages

Events Register

The Events Register provides a configuration with annotations to register event handlers in a unified way.

1 Add events.php to config directory. This configuration file supports 3 methods:

Function array:

<?php
return [
  #[RegisterComponentTypes(Elements::class, Elements::EVENT_REGISTER_ELEMENT_TYPES)]
  function(): array {
      return [YourElement::class];
  },
];

Class object

<?php
return new class {
  #[RegisterComponentTypes(Elements::class, Elements::EVENT_REGISTER_ELEMENT_TYPES)]
  public function registerElements(): array {
      return [YourElement::class];
  },
};  // or return new YourClass()

Class config by Yii::createObject() / Craft::createObject()

<?php
return ['class' => YourClass::class]
  1. Register event using annotations class demo

License

The project is open-sourced software licensed under the MIT license.