Fix service retrieval and add error handling
This commit is contained in:
		@@ -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 = collect($services->json())->sortKeys();
 | 
					            $services = $response->json();
 | 
				
			||||||
 | 
					            $services = collect($services)->sortKeys();
 | 
				
			||||||
 | 
					        } catch (\Throwable $e) {
 | 
				
			||||||
 | 
					            $services = collect([]);
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					    // $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;
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -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>
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user