Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
pterodactyl
GitHub Repository: pterodactyl/panel
Path: blob/1.0-develop/app/Http/Requests/Api/Client/Servers/SendPowerRequest.php
10277 views
1
<?php
2
3
namespace Pterodactyl\Http\Requests\Api\Client\Servers;
4
5
use Pterodactyl\Models\Permission;
6
use Pterodactyl\Http\Requests\Api\Client\ClientApiRequest;
7
8
class SendPowerRequest extends ClientApiRequest
9
{
10
/**
11
* Determine if the user has permission to send a power command to a server.
12
*/
13
public function permission(): string
14
{
15
switch ($this->input('signal')) {
16
case 'start':
17
return Permission::ACTION_CONTROL_START;
18
case 'stop':
19
case 'kill':
20
return Permission::ACTION_CONTROL_STOP;
21
case 'restart':
22
return Permission::ACTION_CONTROL_RESTART;
23
}
24
25
return '__invalid';
26
}
27
28
/**
29
* Rules to validate this request against.
30
*/
31
public function rules(): array
32
{
33
return [
34
'signal' => 'required|string|in:start,stop,restart,kill',
35
];
36
}
37
}
38
39