File "DeleteInviteNotification.php"
Full Path: /var/www/drive/foundation/src/Workspaces/Actions/DeleteInviteNotification.php
File size: 783 bytes
MIME-type: text/x-php
Charset: utf-8
<?php
namespace Common\Workspaces\Actions;
use App\Models\User;
use Common\Workspaces\Notifications\WorkspaceInvitation;
use Common\Workspaces\WorkspaceInvite;
use Illuminate\Notifications\DatabaseNotification;
class DeleteInviteNotification
{
public function execute(WorkspaceInvite $invite, User $user): void
{
$notifications = $user
->notifications()
->where('type', WorkspaceInvitation::class)
->limit(20)
->get();
$notification = $notifications->first(function (
DatabaseNotification $notification,
) use ($invite) {
return $notification->data['inviteId'] === $invite->id;
});
if ($notification) {
$notification->delete();
}
}
}