You've already forked Epicnabbo-Catalogus-Updated-Daily
🆙 phpstan done an refactoring 🆙
This commit is contained in:
@@ -9,19 +9,20 @@ use Illuminate\Database\Eloquent\Builder;
|
||||
class DateRangeFilter extends Filter
|
||||
{
|
||||
#[\Override]
|
||||
public static function make(string $name): static
|
||||
public static function make(?string $name = null): static
|
||||
{
|
||||
return parent::make($name)
|
||||
$filterName = $name ?? 'date';
|
||||
return parent::make($filterName)
|
||||
->schema([
|
||||
DatePicker::make("{$name}_from"),
|
||||
DatePicker::make("{$name}_until"),
|
||||
DatePicker::make("{$filterName}_from"),
|
||||
DatePicker::make("{$filterName}_until"),
|
||||
])
|
||||
->query(function (Builder $query, array $data) use ($name): Builder {
|
||||
if (isset($data["{$name}_from"]) && is_string($data["{$name}_from"])) {
|
||||
$query->whereDate($name, '>=', $data["{$name}_from"]);
|
||||
->query(function (Builder $query, array $data) use ($filterName): Builder {
|
||||
if (isset($data["{$filterName}_from"]) && is_string($data["{$filterName}_from"])) {
|
||||
$query->whereDate($filterName, '>=', $data["{$filterName}_from"]);
|
||||
}
|
||||
if (isset($data["{$name}_until"]) && is_string($data["{$name}_until"])) {
|
||||
$query->whereDate($name, '<=', $data["{$name}_until"]);
|
||||
if (isset($data["{$filterName}_until"]) && is_string($data["{$filterName}_until"])) {
|
||||
$query->whereDate($filterName, '<=', $data["{$filterName}_until"]);
|
||||
}
|
||||
return $query;
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user