feat: connect via rcon
This commit is contained in:
@@ -2,37 +2,27 @@
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Enums\AccessRequestStatus;
|
||||
use App\Http\Requests\AccessRequestsRequest;
|
||||
use App\Models\AccessRequests;
|
||||
use App\Models\GameServers;
|
||||
use Illuminate\Http\JsonResponse;
|
||||
|
||||
class AccessRequestsController extends Controller
|
||||
{
|
||||
public function index()
|
||||
public function store(AccessRequestsRequest $request): JsonResponse
|
||||
{
|
||||
return AccessRequests::all();
|
||||
}
|
||||
$validated = $request->validated();
|
||||
$serverId = $validated['server_id']
|
||||
?? GameServers::where('slug', $validated['server_slug'])->valueOrFail('id');
|
||||
|
||||
public function store(AccessRequestsRequest $request)
|
||||
{
|
||||
return AccessRequests::create($request->validated());
|
||||
}
|
||||
$accessRequest = AccessRequests::create([
|
||||
'game_username' => $validated['game_username'],
|
||||
'message' => $validated['message'] ?? '',
|
||||
'server_id' => $serverId,
|
||||
'status' => AccessRequestStatus::PENDING,
|
||||
]);
|
||||
|
||||
public function show(AccessRequests $accessRequests)
|
||||
{
|
||||
return $accessRequests;
|
||||
}
|
||||
|
||||
public function update(AccessRequestsRequest $request, AccessRequests $accessRequests)
|
||||
{
|
||||
$accessRequests->update($request->validated());
|
||||
|
||||
return $accessRequests;
|
||||
}
|
||||
|
||||
public function destroy(AccessRequests $accessRequests)
|
||||
{
|
||||
$accessRequests->delete();
|
||||
|
||||
return response()->json();
|
||||
return response()->json($accessRequest, 201);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -9,11 +9,10 @@ class AccessRequestsRequest extends FormRequest
|
||||
public function rules(): array
|
||||
{
|
||||
return [
|
||||
'status' => ['required'],
|
||||
'message' => ['required'],
|
||||
'reviewed_by' => ['nullable', 'exists:users'],
|
||||
'server_id' => ['required', 'exists:game_servers'],
|
||||
'reviewed_at' => ['nullable', 'date'],
|
||||
'game_username' => ['required', 'string', 'regex:/^[A-Za-z0-9_]{3,16}$/'],
|
||||
'message' => ['nullable', 'string', 'max:255'],
|
||||
'server_id' => ['nullable', 'required_without:server_slug', 'ulid', 'exists:game_servers,id'],
|
||||
'server_slug' => ['nullable', 'required_without:server_id', 'string', 'exists:game_servers,slug'],
|
||||
];
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user