You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
36 lines
831 B
36 lines
831 B
<?php
|
|
|
|
namespace App\Listeners;
|
|
|
|
use App\Events\ModelSaved;
|
|
use Illuminate\Contracts\Queue\ShouldQueue;
|
|
use Illuminate\Queue\InteractsWithQueue;
|
|
|
|
class NotifHandler
|
|
{
|
|
/**
|
|
* Create the event listener.
|
|
*
|
|
* @return void
|
|
*/
|
|
public function __construct()
|
|
{
|
|
//
|
|
}
|
|
|
|
/**
|
|
* Handle the event.
|
|
*
|
|
* @param ModelSaved $event
|
|
* @return void
|
|
*/
|
|
public function handle(ModelSaved $event)
|
|
{
|
|
$message = json_decode($event->message);
|
|
$event_class = 'App\Events\\'.enum('tables.'.$message->data->table_name.'.singular_name').enum('cruds.inverse.'.$message->data->crud_id.'.name');
|
|
if (class_exists($event_class)) {
|
|
// event(new ('App\Events\\'.$event_class($message)));
|
|
$event_class::dispatch($message);
|
|
}
|
|
}
|
|
}
|