Skip to content

Commit 1a27dec

Browse files
authored
Filter results by created date (alexjustesen#2248)
Co-authored-by: Alex Justesen <[email protected]>
1 parent 9142236 commit 1a27dec

File tree

1 file changed

+18
-0
lines changed

1 file changed

+18
-0
lines changed

app/Filament/Resources/ResultResource.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@
1111
use Carbon\Carbon;
1212
use Filament\Forms;
1313
use Filament\Forms\Components\Checkbox;
14+
use Filament\Forms\Components\DatePicker;
1415
use Filament\Forms\Components\Grid;
1516
use Filament\Forms\Components\Placeholder;
1617
use Filament\Forms\Components\Section;
@@ -27,6 +28,7 @@
2728
use Filament\Tables\Actions\ViewAction;
2829
use Filament\Tables\Columns\IconColumn;
2930
use Filament\Tables\Columns\TextColumn;
31+
use Filament\Tables\Filters\Filter;
3032
use Filament\Tables\Filters\SelectFilter;
3133
use Filament\Tables\Filters\TernaryFilter;
3234
use Filament\Tables\Table;
@@ -357,6 +359,22 @@ public static function table(Table $table): Table
357359
->alignment(Alignment::End),
358360
])
359361
->filters([
362+
Filter::make('created_at')
363+
->form([
364+
DatePicker::make('created_from'),
365+
DatePicker::make('created_until'),
366+
])
367+
->query(function (Builder $query, array $data): Builder {
368+
return $query
369+
->when(
370+
$data['created_from'],
371+
fn (Builder $query, $date): Builder => $query->whereDate('created_at', '>=', $date),
372+
)
373+
->when(
374+
$data['created_until'],
375+
fn (Builder $query, $date): Builder => $query->whereDate('created_at', '<=', $date),
376+
);
377+
}),
360378
SelectFilter::make('ip_address')
361379
->label('IP address')
362380
->multiple()

0 commit comments

Comments
 (0)