Files
nexusphp/app/Enums/ModelEventEnum.php
2025-04-17 01:39:40 +07:00

45 lines
1.6 KiB
PHP

<?php
namespace App\Enums;
use App\Events\NewsCreated;
use App\Events\TorrentCreated;
use App\Events\TorrentDeleted;
use App\Events\TorrentUpdated;
use App\Events\UserCreated;
use App\Events\UserDeleted;
use App\Events\UserDisabled;
use App\Events\UserEnabled;
use App\Events\UserUpdated;
use App\Models\News;
use App\Models\Torrent;
use App\Models\User;
final class ModelEventEnum {
const TORRENT_CREATED = 'torrent_created';
const TORRENT_UPDATED = 'torrent_updated';
const TORRENT_DELETED = 'torrent_deleted';
const USER_CREATED = 'user_created';
const USER_UPDATED = 'user_updated';
const USER_DELETED = 'user_deleted';
const USER_ENABLED = 'user_enabled';
const USER_DISABLED = 'user_disabled';
const NEWS_CREATED = 'news_created';
public static array $eventMaps = [
self::TORRENT_CREATED => ['event' => TorrentCreated::class, 'model' => Torrent::class],
self::TORRENT_UPDATED => ['event' => TorrentUpdated::class, 'model' => Torrent::class],
self::TORRENT_DELETED => ['event' => TorrentDeleted::class, 'model' => Torrent::class],
self::USER_CREATED => ['event' => UserCreated::class, 'model' => User::class],
self::USER_UPDATED => ['event' => UserUpdated::class, 'model' => User::class],
self::USER_DELETED => ['event' => UserDeleted::class, 'model' => User::class],
self::USER_ENABLED => ['event' => UserEnabled::class, 'model' => User::class],
self::USER_DISABLED => ['event' => UserDisabled::class, 'model' => User::class],
self::NEWS_CREATED => ['event' => NewsCreated::class, 'model' => News::class],
];
}