added module:download command

This commit is contained in:
Denis Duliçi
2020-12-24 02:16:00 +03:00
parent 5b0a50c758
commit 531dcd8dab
16 changed files with 793 additions and 515 deletions

View File

@ -105,7 +105,7 @@ class Versions
return $versions;
}
protected static function getLatestVersion($url, $latest)
public static function getLatestVersion($url, $latest)
{
if (!$data = static::getResponseData('GET', $url, ['timeout' => 10])) {
return $latest;
@ -117,4 +117,44 @@ class Versions
return $data->latest;
}
public static function getUpdates()
{
// Get data from cache
$updates = Cache::get('updates');
if (!empty($updates)) {
return $updates;
}
$updates = [];
$modules = module()->all();
$versions = static::all($modules);
foreach ($versions as $alias => $latest_version) {
if ($alias == 'core') {
$installed_version = version('short');
} else {
$module = module($alias);
if (!$module instanceof \Akaunting\Module\Module) {
continue;
}
$installed_version = $module->get('version');
}
if (version_compare($installed_version, $latest_version, '>=')) {
continue;
}
$updates[$alias] = $latest_version;
}
Cache::put('updates', $updates, Date::now()->addHour(6));
return $updates;
}
}