Skip to content

Commit d7f2784

Browse files
committed
revert: restore mutateFormData hooks for consistency
Derives user_id and organization_id from member_id, matching how the API controller handles time entry creation/updates. https://claude.ai/code/session_01CVi5hmyiPDpvEzzTD7RPr7
1 parent 0e7bf6e commit d7f2784

File tree

2 files changed

+36
-0
lines changed

2 files changed

+36
-0
lines changed

app/Filament/Resources/TimeEntryResource/Pages/CreateTimeEntry.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,27 @@
55
namespace App\Filament\Resources\TimeEntryResource\Pages;
66

77
use App\Filament\Resources\TimeEntryResource;
8+
use App\Models\Member;
89
use Filament\Resources\Pages\CreateRecord;
910

1011
class CreateTimeEntry extends CreateRecord
1112
{
1213
protected static string $resource = TimeEntryResource::class;
14+
15+
/**
16+
* @param array<string, mixed> $data
17+
* @return array<string, mixed>
18+
*/
19+
protected function mutateFormDataBeforeCreate(array $data): array
20+
{
21+
if (isset($data['member_id'])) {
22+
$member = Member::find($data['member_id']);
23+
if ($member !== null) {
24+
$data['user_id'] = $member->user_id;
25+
$data['organization_id'] = $member->organization_id;
26+
}
27+
}
28+
29+
return $data;
30+
}
1331
}

app/Filament/Resources/TimeEntryResource/Pages/EditTimeEntry.php

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
namespace App\Filament\Resources\TimeEntryResource\Pages;
66

77
use App\Filament\Resources\TimeEntryResource;
8+
use App\Models\Member;
89
use Filament\Actions;
910
use Filament\Resources\Pages\EditRecord;
1011

@@ -19,4 +20,21 @@ protected function getHeaderActions(): array
1920
->icon('heroicon-m-trash'),
2021
];
2122
}
23+
24+
/**
25+
* @param array<string, mixed> $data
26+
* @return array<string, mixed>
27+
*/
28+
protected function mutateFormDataBeforeSave(array $data): array
29+
{
30+
if (isset($data['member_id'])) {
31+
$member = Member::find($data['member_id']);
32+
if ($member !== null) {
33+
$data['user_id'] = $member->user_id;
34+
$data['organization_id'] = $member->organization_id;
35+
}
36+
}
37+
38+
return $data;
39+
}
2240
}

0 commit comments

Comments
 (0)