gl-website-deployer/admin/phpMyAdmin/libraries/classes/Controllers/VersionCheckController.php

50 lines
1.2 KiB
PHP
Raw Normal View History

2024-11-23 20:45:29 +01:00
<?php
declare(strict_types=1);
namespace PhpMyAdmin\Controllers;
use PhpMyAdmin\Core;
use PhpMyAdmin\VersionInformation;
use function json_encode;
/**
* A caching proxy for retrieving version information from https://www.phpmyadmin.net/.
*/
class VersionCheckController extends AbstractController
{
public function __invoke(): void
{
$_GET['ajax_request'] = 'true';
// Disabling standard response.
$this->response->disable();
// Always send the correct headers
Core::headerJSON();
$versionInformation = new VersionInformation();
$versionDetails = $versionInformation->getLatestVersion();
if (empty($versionDetails)) {
echo json_encode([]);
return;
}
$latestCompatible = $versionInformation->getLatestCompatibleVersion($versionDetails->releases);
$version = '';
$date = '';
if ($latestCompatible != null) {
$version = $latestCompatible['version'];
$date = $latestCompatible['date'];
}
echo json_encode([
'version' => ! empty($version) ? $version : '',
'date' => ! empty($date) ? $date : '',
]);
}
}