for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
namespace App\Listeners;
use App\Events\LeaveCreated;
use App\Events\LeaveUpdated;
use App\Models\Teacher;
class UpdateTeacherEvents
{
public function handle(LeaveCreated|LeaveUpdated $event) {
$teacher = $event->leave->teacher;
foreach ($teacher->events()->whereDate('start', '>=', $event->leave->date)->whereDate('end', '<=', $event->leave->date)->get() as $event) {
$event->teacher_id = null;
$event->save();
}