|
@@ -4,7 +4,6 @@ namespace App\Filament\Company\Pages\Concerns;
|
4
|
4
|
|
5
|
5
|
use Filament\Actions\Action;
|
6
|
6
|
use Filament\Forms\Components\DatePicker;
|
7
|
|
-use Filament\Forms\Components\DateTimePicker;
|
8
|
7
|
use Filament\Forms\Form;
|
9
|
8
|
use Illuminate\Support\Arr;
|
10
|
9
|
use Illuminate\Support\Carbon;
|
|
@@ -106,19 +105,6 @@ trait HasDeferredFiltersForm
|
106
|
105
|
Arr::set($this->deferredFilters, $name, $value);
|
107
|
106
|
}
|
108
|
107
|
|
109
|
|
- protected function convertDatesToDateTimeString(array $filters): array
|
110
|
|
- {
|
111
|
|
- if (isset($filters['startDate'])) {
|
112
|
|
- $filters['startDate'] = Carbon::parse($filters['startDate'])->startOfDay()->toDateTimeString();
|
113
|
|
- }
|
114
|
|
-
|
115
|
|
- if (isset($filters['endDate'])) {
|
116
|
|
- $filters['endDate'] = Carbon::parse($filters['endDate'])->endOfDay()->toDateTimeString();
|
117
|
|
- }
|
118
|
|
-
|
119
|
|
- return $filters;
|
120
|
|
- }
|
121
|
|
-
|
122
|
108
|
protected function queryStringHasDeferredFiltersForm(): array
|
123
|
109
|
{
|
124
|
110
|
// Get the filter keys dynamically from the filters form
|
|
@@ -171,25 +157,9 @@ trait HasDeferredFiltersForm
|
171
|
157
|
$flatFields = $this->getFiltersForm()->getFlatFields();
|
172
|
158
|
|
173
|
159
|
foreach ($this->filters as $key => $value) {
|
174
|
|
- if (! isset($flatFields[$key]) || blank($value)) {
|
175
|
|
- continue;
|
176
|
|
- }
|
177
|
|
-
|
178
|
|
- $field = $flatFields[$key];
|
179
|
|
-
|
180
|
|
- // Reproduce underlying conversion to UTC for DateTimePicker and DatePicker
|
181
|
|
- if ($field instanceof DateTimePicker && $field->getTimezone() !== config('app.timezone')) {
|
182
|
|
- try {
|
183
|
|
- $carbonValue = Carbon::parse($value, $field->getTimezone());
|
184
|
|
-
|
185
|
|
- // Shift back to UTC and format according to field type
|
186
|
|
- $this->filters[$key] = $carbonValue
|
187
|
|
- ->setTimezone(config('app.timezone'))
|
188
|
|
- ->format($field->getFormat());
|
189
|
|
-
|
190
|
|
- } catch (\Exception $e) {
|
191
|
|
- continue;
|
192
|
|
- }
|
|
160
|
+ if (isset($flatFields[$key]) && $flatFields[$key] instanceof DatePicker) {
|
|
161
|
+ // TODO: Submit a PR to Filament to address DatePicker being dehydrated as a datetime string in filters
|
|
162
|
+ $this->filters[$key] = Carbon::parse($value)->toDateString();
|
193
|
163
|
}
|
194
|
164
|
}
|
195
|
165
|
}
|