Skip to content
Snippets Groups Projects
Commit b8cbe157 authored by Thijs Kinkhorst's avatar Thijs Kinkhorst
Browse files

Version checking: do not poll github when running master, and store result in session.

parent e8ee8c83
No related branches found
No related tags found
No related merge requests found
......@@ -70,27 +70,34 @@ $allLinks = array(
);
SimpleSAML\Module::callHooks('frontpage', $allLinks);
// check for updates
if ($config->getBoolean('admin.checkforupdates', true)) {
$api_url = 'https://api.github.com/repos/simplesamlphp/simplesamlphp/releases';
$ch = curl_init($api_url.'/latest');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, 'SimpleSAMLphp');
curl_setopt($ch, CURLOPT_TIMEOUT, 2);
$response = curl_exec($ch);
if (curl_getinfo($ch, CURLINFO_HTTP_CODE) === 200) {
$latest = json_decode($response, true);
$current = $config->getVersion();
if ($current !== 'master' && version_compare($current, ltrim($latest['tag_name'], 'v'), 'lt')) {
$outdated = true;
$warnings[] = array(
'{core:frontpage:warnings_outdated}',
array('%LATEST_URL%' => $latest['html_url'])
);
// Check for updates. Store the remote result in the session so we
// don't need to fetch it on every access of this page.
$current = $config->getVersion();
if ($config->getBoolean('admin.checkforupdates', true) && $current !== 'master') {
$latest = $session->getData("core:latest_simplesamlphp_version", "version");
if (!$latest) {
$api_url = 'https://api.github.com/repos/simplesamlphp/simplesamlphp/releases';
$ch = curl_init($api_url.'/latest');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, 'SimpleSAMLphp');
curl_setopt($ch, CURLOPT_TIMEOUT, 2);
$response = curl_exec($ch);
if (curl_getinfo($ch, CURLINFO_HTTP_CODE) === 200) {
$latest = json_decode($response, true);
$session->setData("core:latest_simplesamlphp_version", "version", $latest);
}
curl_close($ch);
}
if ($latest && version_compare($current, ltrim($latest['tag_name'], 'v'), 'lt')) {
$outdated = true;
$warnings[] = array(
'{core:frontpage:warnings_outdated}',
array('%LATEST_URL%' => $latest['html_url'])
);
}
curl_close($ch);
}
$enablematrix = array(
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment