public function showUpdatePage()
{
$info = ['latest_version' => '', 'current_version' => $this->currentVersion, 'release_note' => '', 'release_url' => '', 'pre_release' => false, 'release_time' => time(), 'new_version_available' => false];
// if current update source is available
if ($this->getUpdateInfo()) {
$info['latest_version'] = $this->getUpdateInfo('latest_version');
if ($current_release = $this->getReleaseInfo($this->currentVersion)) {
$info['release_time'] = Arr::get($current_release, 'release_time') ?: time();
}
$info['new_version_available'] = version_compare($info['latest_version'], $info['current_version'], '>');
if ($detail = $this->getReleaseInfo($info['latest_version'])) {
$info = array_merge($info, Arr::only($detail, ['release_note', 'release_url', 'release_time', 'pre_release']));
} else {
// if detailed release info is not given
$info['new_version_available'] = false;
}
}
return view('admin.update')->with('info', $info);
}