32 lines
974 B
PHP
32 lines
974 B
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use App\Models\Project;
|
|
use Illuminate\Support\Facades\Http;
|
|
|
|
class StatusCheckerController extends Controller
|
|
{
|
|
/**
|
|
* Fetch Status
|
|
*
|
|
* @return \Illuminate\Contracts\View\View|\Illuminate\Contracts\View\Factory
|
|
*/
|
|
public function index()
|
|
{
|
|
$wpReleases = Http::get(config('status-checker.wp_endpoint'))->json();
|
|
$laravelReleases = Http::withOptions([
|
|
'allow_redirects' => false,
|
|
])->asJson()->get(config('status-checker.laravel_endpoint'))->json();
|
|
|
|
$wp_latest = collect(collect(\collect($wpReleases)->get('offers'))->first())->get('version');
|
|
$laravel_latest = ltrim(collect(collect($laravelReleases)->first())->get('tag_name'), 'v');
|
|
|
|
$projects = Project::orderBy('name')->get();
|
|
return view('status-checker.index', compact(
|
|
'projects',
|
|
'wp_latest',
|
|
'laravel_latest'
|
|
));
|
|
}
|
|
}
|