SelectFilter::make('order')
->default(0)
->options([
0 => __('Discovery'),
1 => __('Latest'),
2 => __('Random'),
])
->query(function (Builder $query, array $data): Builder {
return $query
->when($data['value'] == 0, function ($q) {
$q->orderBy('discovered_at', 'desc');
})
->when($data['value'] == 1, function ($q) {
$q->latest();
})
->when($data['value'] == 2, function ($q) {
$q->inRandomOrder();
})
;
})
,
SelectFilter::make('order')
->default(0)
->options([
0 => __('Discovery'),
1 => __('Latest'),
2 => __('Random'),
])
->query(function (Builder $query, array $data): Builder {
return $query
->when($data['value'] == 0, function ($q) {
$q->orderBy('discovered_at', 'desc');
})
->when($data['value'] == 1, function ($q) {
$q->latest();
})
->when($data['value'] == 2, function ($q) {
$q->inRandomOrder();
})
;
})
,