Files
nuhodds_fi4/app/Filament/Resources/Sports/SportResource.php
T
2026-01-12 15:42:49 +01:00

66 lines
2.1 KiB
PHP

<?php
namespace App\Filament\Resources\Sports;
use App\Filament\Clusters\Administrator\AdministratorCluster;
use App\Filament\Resources\Sports\Pages\ManageSports;
use App\Models\Sport;
use Filament\Resources\Resource;
use Filament\Support\Enums\IconSize;
use Filament\Tables\Columns\IconColumn;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Columns\ToggleColumn;
use Filament\Tables\Filters\TernaryFilter;
use Filament\Tables\Table;
class SportResource extends Resource
{
protected static ?string $model = Sport::class;
protected static ?int $navigationSort = 24;
protected static string|\BackedEnum|null $navigationIcon = 'phosphor-volleyball';
protected static ?string $recordTitleAttribute = 'name';
protected static ?string $cluster = AdministratorCluster::class;
protected static string|\UnitEnum|null $navigationGroup = 'Static Data';
public static function table(Table $table): Table
{
return $table
->striped()
->columns([
IconColumn::make('icon')
->label('')
->size(IconSize::TwoExtraLarge)
->icon(function ($record): string {
return $record->icon;
}),
TextColumn::make('name'),
TextColumn::make('bapi')->alignCenter()->label('Betsapi'),
TextColumn::make('bwin')->alignCenter()->label('Bwin'),
TextColumn::make('b365')->alignCenter()->label('Bet365'),
TextColumn::make('logi')->alignCenter()->label('Logifuture'),
TextColumn::make('magl')->alignCenter()->label('Magloo'),
ToggleColumn::make('is_active'),
])
->filters([
TernaryFilter::make('is_active')->default(true),
]);
}
public static function getPages(): array
{
return [
'index' => ManageSports::route('/'),
];
}
public static function getNavigationBadge(): ?string
{
return parent::getEloquentQuery()->count();
}
}