From f1d1058868298e0e2c1cf811419dd67420251bf4 Mon Sep 17 00:00:00 2001 From: Yoga Pangestu Date: Tue, 27 Jan 2026 15:28:14 +0700 Subject: [PATCH] feat: Auto-verify new user emails upon creation and remove `recordTitleAttribute` and `autocomplete(false)` from the user resource. --- .../Resources/Master/Users/Pages/ManageUsers.php | 13 ++++++++++--- .../Resources/Master/Users/UserResource.php | 6 ++---- 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/app/Filament/Resources/Master/Users/Pages/ManageUsers.php b/app/Filament/Resources/Master/Users/Pages/ManageUsers.php index d15db91..2b96bdb 100644 --- a/app/Filament/Resources/Master/Users/Pages/ManageUsers.php +++ b/app/Filament/Resources/Master/Users/Pages/ManageUsers.php @@ -9,10 +9,10 @@ class ManageUsers extends ManageRecords { - protected static ?string $title = 'Pengguna'; - protected static string $resource = UserResource::class; + protected static ?string $title = 'Pengguna'; + protected function getHeaderActions(): array { return [ @@ -25,7 +25,14 @@ protected function getHeaderActions(): array $action->makeModalSubmitAction('createAnother', arguments: ['another' => true]) ->label('Simpan dan Tambah Lagi'), ]) - ->modalWidth(Width::Large), + ->modalWidth(Width::Large) + ->after(function (CreateAction $action): void { + $user = $action->getRecord(); + + $user->update([ + 'email_verified_at' => now(), + ]); + }), ]; } } diff --git a/app/Filament/Resources/Master/Users/UserResource.php b/app/Filament/Resources/Master/Users/UserResource.php index 8d7fade..2de34d9 100644 --- a/app/Filament/Resources/Master/Users/UserResource.php +++ b/app/Filament/Resources/Master/Users/UserResource.php @@ -43,7 +43,7 @@ class UserResource extends Resource protected static ?int $navigationSort = 8; - protected static ?string $recordTitleAttribute = 'name'; + // protected static ?string $recordTitleAttribute = 'name'; protected static ?string $slug = 'master/users'; @@ -86,8 +86,7 @@ public static function form(Schema $schema): Schema }) ->multiple() ->preload() - ->searchable() - ->autocomplete(false), + ->searchable(), Hidden::make('password') ->default(fn (?User $record): ?string => $record ? null : config('auth.password_default')), @@ -98,7 +97,6 @@ public static function form(Schema $schema): Schema public static function table(Table $table): Table { return $table - ->recordTitleAttribute('name') ->columns([ TextColumn::make('name') ->label('Nama')