42 lines
1.4 KiB
PHP
42 lines
1.4 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers;
|
|
|
|
use Illuminate\Http\Request;
|
|
|
|
class AdminToolsController extends Controller
|
|
{
|
|
function missingLiveries(){
|
|
|
|
|
|
/* $existingFiles = collect(glob(public_path('img/liveries/generated/*')))
|
|
->map(fn ($path) => pathinfo($path, PATHINFO_FILENAME))
|
|
->toArray();*/
|
|
|
|
$existingFiles = collect(glob('C:\\Users\\josh\\WebstormProjects\\Watermark-Remover\\images\\liveries_processed\\*'))
|
|
->map(fn ($path) => pathinfo($path, PATHINFO_FILENAME))
|
|
->toArray();
|
|
|
|
|
|
$combos = \App\Models\UserFlight::with(['aircraft', 'airline'])
|
|
->select('airline_id', 'aircraft_id')
|
|
->whereNotNull('airline_id')
|
|
->whereNotNull('aircraft_id')
|
|
->distinct()
|
|
->get()
|
|
->filter(fn ($flight) => $flight->aircraft && $flight->airline)
|
|
->map(fn ($flight) => [
|
|
'airline_name' => $flight->airline->name,
|
|
'aircraft_display_name' => $flight->aircraft->display_name,
|
|
'filename' => $flight->airline->internal_name . '_' . $flight->aircraft->designator,
|
|
])
|
|
->filter(fn ($combo) => !in_array($combo['filename'], $existingFiles))
|
|
->values();
|
|
|
|
return response()->json([
|
|
'count' => $combos->count(),
|
|
'liveries' => $combos,
|
|
]);
|
|
}
|
|
}
|