Files
Epicnabbo-Catalogus-Updated…/Updated_Cms/app/Actions/SendFurniture.php
T
2026-01-20 20:40:28 +01:00

37 lines
1.1 KiB
PHP

<?php
namespace App\Actions;
use App\Models\User;
use App\Services\RconService;
class SendFurniture
{
public function __construct(private readonly RconService $rcon) {}
public function execute(User $user, array $furniture): void
{
foreach ($furniture as $furni) {
if (! is_array($furni)) {
continue;
}
$amount = is_numeric($furni['amount'] ?? null) ? (int) $furni['amount'] : 0;
$itemId = is_numeric($furni['item_id'] ?? null) ? (int) $furni['item_id'] : 0;
if ($amount <= 0 || $itemId <= 0) {
continue;
}
if ($this->rcon->isConnected) {
for ($i = 0; $i < $amount; $i++) {
$this->rcon->sendGift($user, $itemId, 'Thank you for supporting ' . setting('hotel_name'));
}
} else {
for ($i = 0; $i < $amount; $i++) {
$user->items()->create([
'item_id' => $itemId,
]);
}
}
}
}
}