Server IP : 66.29.132.124 / Your IP : 3.148.112.15 Web Server : LiteSpeed System : Linux business141.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : wavevlvu ( 1524) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /home/wavevlvu/book24.ng/modules/Booking/Traits/ |
Upload File : |
<?php namespace Modules\Booking\Traits; use Modules\Booking\Models\Service; trait CapturesService { protected static function bootCapturesService() { foreach (static::getModelEvents() as $event) { static::$event(function ($model) use ($event) { $model->capturesService($event); }); } } protected static function getModelEvents() { if (isset(static::$capturedEvents)) { return static::$capturedEvents; } return ['saved','deleted','restored']; } public function getActivityName($model, $action) { $name = strtolower(class_basename($model)); return "{$action}_{$name}"; } public function capturesService($event) { if(in_array($event,['saved','created', 'updated'])){ Service::cloneService($this,$event); } if($event=='deleted'){ Service::deleteService($this); } if($event=='restored'){ Service::restoreService($this); } } }