38 lines
1.0 KiB
PHP
38 lines
1.0 KiB
PHP
<?php
|
|
|
|
namespace App\Http\Controllers\Api;
|
|
|
|
use App\Http\Controllers\Controller;
|
|
use App\Models\Style;
|
|
use App\Models\Setting;
|
|
use Illuminate\Http\Request;
|
|
|
|
class StyleController extends Controller
|
|
{
|
|
public function index()
|
|
{
|
|
$styles = Style::with(['aiModel.apiProviders'])
|
|
->where('enabled', true)
|
|
->whereHas('aiModel', function ($query) {
|
|
$query->where('enabled', true);
|
|
$query->whereHas('apiProviders', function ($query) {
|
|
$query->where('enabled', true);
|
|
});
|
|
})
|
|
->get()
|
|
->sortBy('sort_order');
|
|
|
|
if ($styles->isEmpty()) {
|
|
return response()->json(['message' => __('api.no_styles_available')], 404);
|
|
}
|
|
|
|
return response()->json($styles);
|
|
}
|
|
|
|
public function getImageRefreshInterval()
|
|
{
|
|
$interval = Setting::where('key', 'image_refresh_interval')->first();
|
|
|
|
return response()->json(['interval' => $interval ? (int)$interval->value / 1000 : 5]);
|
|
}
|
|
} |