Fix service retrieval and add error handling

This commit is contained in:
Andras Bacsai 2023-11-13 12:59:59 +01:00
parent 7763594e6e
commit 55846c5635
2 changed files with 17 additions and 12 deletions

View File

@ -447,20 +447,25 @@ function getServiceTemplates()
if (isDev()) { if (isDev()) {
$services = File::get(base_path('templates/service-templates.json')); $services = File::get(base_path('templates/service-templates.json'));
$services = collect(json_decode($services))->sortKeys(); $services = collect(json_decode($services))->sortKeys();
$version = config('version');
$services = $services->map(function ($service) use ($version) {
if (version_compare($version, data_get($service, 'minVersion', '0.0.0'), '<')) {
$service->disabled = true;
}
return $service;
});
} else { } else {
$services = Http::get(config('constants.services.official')); try {
if ($services->failed()) { $response = Http::retry(3, 50)->get(config('constants.services.official'));
throw new \Exception($services->body()); if ($response->failed()) {
return collect([]);
}
$services = $response->json();
$services = collect($services)->sortKeys();
} catch (\Throwable $e) {
$services = collect([]);
} }
$services = collect($services->json())->sortKeys();
} }
// $version = config('version');
// $services = $services->map(function ($service) use ($version) {
// if (version_compare($version, data_get($service, 'minVersion', '0.0.0'), '<')) {
// $service->disabled = true;
// }
// return $service;
// });
return $services; return $services;
} }

View File

@ -182,7 +182,7 @@
</button> </button>
@endif @endif
@empty @empty
<div>No service found.</div> <div>No service found. Please try to reload the list!</div>
@endforelse @endforelse
@endif @endif
</div> </div>