ConvoyPanel/app/Http/Requests/Client/Servers/CreateConsoleSessionRequest.php
2024-10-12 12:17:20 -04:00

30 lines
713 B
PHP

<?php
namespace App\Http\Requests\Client\Servers;
use App\Enums\Server\ConsoleType;
use App\Http\Requests\BaseApiRequest;
use App\Models\Server;
use Illuminate\Validation\Rules\Enum;
class CreateConsoleSessionRequest extends BaseApiRequest
{
public function authorize(): bool
{
return $this->user()->can(
'createConsoleSession',
$this->parameter('server', Server::class),
);
}
public function rules(): array
{
$server = $this->parameter('server', Server::class);
return [
'type' => [$server->node->coterm_enabled ? 'required' : 'exclude', new Enum(
ConsoleType::class,
)],
];
}
}