Skip to content

Commit a5bec9a

Browse files
authored
Tidy up (#117)
* Remove use of backslashes * Import scope attribute * Remove roles and permissions policies * Fix users in Filament search * Add keybindings for Filament search
1 parent 1ad80bb commit a5bec9a

File tree

9 files changed

+23
-51
lines changed

9 files changed

+23
-51
lines changed

app/Filament/Resources/Users/UserResource.php

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,29 @@
1111
use Filament\Resources\Resource;
1212
use Filament\Schemas\Schema;
1313
use Filament\Tables\Table;
14+
use Illuminate\Database\Eloquent\Model;
1415

1516
class UserResource extends Resource
1617
{
1718
protected static ?string $model = User::class;
1819

1920
protected static string|\BackedEnum|null $navigationIcon = 'heroicon-o-users';
2021

21-
protected static ?string $recordTitleAttribute = 'full_name';
22+
protected static ?string $recordTitleAttribute = 'email';
23+
24+
public static function getGloballySearchableAttributes(): array
25+
{
26+
return ['email', 'first_name', 'last_name', 'roles.name'];
27+
}
28+
29+
public static function getGlobalSearchResultDetails(Model $record): array
30+
{
31+
return [
32+
'Name' => $record->fullName,
33+
'Roles' => $record->roles->pluck('name')->join(', '),
34+
'Verified' => $record->hasVerifiedEmail() ? 'Yes' : 'No',
35+
];
36+
}
2237

2338
public static function form(Schema $schema): Schema
2439
{

app/Filament/Widgets/UserStats.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ protected function getStats(): array
1212
{
1313
return [
1414
Stat::make('Users', User::query()->count()),
15-
Stat::make('New users (last 7 days)', User::query()->where('created_at', '>=', \now()->subDays(7))->count()),
16-
Stat::make('New users (last 30 days)', User::query()->where('created_at', '>=', \now()->subDays(30))->count()),
15+
Stat::make('New users (last 7 days)', User::query()->where('created_at', '>=', now()->subDays(7))->count()),
16+
Stat::make('New users (last 30 days)', User::query()->where('created_at', '>=', now()->subDays(30))->count()),
1717
];
1818
}
1919
}

app/Http/Controllers/LoginController.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,6 @@ public function store(LoginStoreRequest $request)
3434
return redirect()->to($request->validated('redirect'));
3535
}
3636

37-
return redirect()->intended(\route('home'));
37+
return redirect()->intended(route('home'));
3838
}
3939
}

app/Models/User.php

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
use Filament\Models\Contracts\HasName;
88
use Filament\Panel;
99
use Illuminate\Contracts\Auth\MustVerifyEmail;
10+
use Illuminate\Database\Eloquent\Attributes\Scope;
1011
use Illuminate\Database\Eloquent\Builder;
1112
use Illuminate\Database\Eloquent\Casts\Attribute;
1213
use Illuminate\Database\Eloquent\Factories\HasFactory;
@@ -56,7 +57,7 @@ protected function allPermissions(): Attribute
5657
);
5758
}
5859

59-
#[\Illuminate\Database\Eloquent\Attributes\Scope]
60+
#[Scope]
6061
protected function hasRoles(Builder $query, array $roles): void
6162
{
6263
$query->whereHas('roles', fn (Builder $query) => $query->whereIn('name', $roles));

app/Policies/PermissionPolicy.php

Lines changed: 0 additions & 14 deletions
This file was deleted.

app/Policies/RolePolicy.php

Lines changed: 0 additions & 14 deletions
This file was deleted.

app/Providers/AuthServiceProvider.php

Lines changed: 0 additions & 17 deletions
This file was deleted.

app/Providers/Filament/AdminPanelProvider.php

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ public function panel(Panel $panel): Panel
2626
->id('admin')
2727
->path('admin')
2828
->topbar(false)
29+
->globalSearchKeyBindings(['command+k', 'ctrl+k'])
30+
->globalSearchFieldKeyBindingSuffix()
2931
->viteTheme('resources/css/filament/admin/theme.css')
3032
->colors([
3133
'primary' => '#1e293b',

bootstrap/providers.php

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,5 @@
22

33
return [
44
App\Providers\AppServiceProvider::class,
5-
App\Providers\AuthServiceProvider::class,
65
App\Providers\Filament\AdminPanelProvider::class,
76
];

0 commit comments

Comments
 (0)