39 lines
1.1 KiB
PHP
39 lines
1.1 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Enums\ServerStatus;
|
|
use App\Models\Application;
|
|
use App\Models\Organisation;
|
|
use Illuminate\Http\Request;
|
|
|
|
class ApplicationController extends Controller
|
|
{
|
|
public function index(Request $request)
|
|
{
|
|
$organisation = Organisation::with('applications.instances.server')->findOrFail($request->route('organisation'));
|
|
|
|
return inertia('applications/Index', [
|
|
'applications' => $organisation->applications,
|
|
]);
|
|
}
|
|
|
|
public function show(Request $request)
|
|
{
|
|
$id = $request->route('application');
|
|
$application = Application::with(['instances.server', 'organisation'])->findOrFail($id);
|
|
|
|
return inertia('applications/Show', [
|
|
'application' => $application,
|
|
'servers' => inertia()->optional(function () use ($application) {
|
|
return $application
|
|
->organisation
|
|
?->servers()
|
|
->where('status', ServerStatus::ACTIVE)
|
|
->with('services')
|
|
->get() ?? [];
|
|
}),
|
|
]);
|
|
}
|
|
}
|