Files
nutzwerte_fi4/app/Filament/Resources/Kontos/Tables/KontosTable.php
T
2025-09-22 10:02:08 +02:00

48 lines
1.7 KiB
PHP

<?php
namespace App\Filament\Resources\Kontos\Tables;
use Filament\Actions\EditAction;
use Filament\Support\Icons\Heroicon;
use Filament\Tables\Columns\IconColumn;
use Filament\Tables\Columns\TextColumn;
use Filament\Tables\Table;
use Ysfkaya\FilamentPhoneInput\PhoneInputNumberType;
use Ysfkaya\FilamentPhoneInput\Tables\PhoneColumn;
class KontosTable
{
public static function configure(Table $table): Table
{
return $table
->columns([
// TextColumn::make('id'),
TextColumn::make('konto_gender')->label('Geschlecht'),
// TextColumn::make('konto_title')->label('Title'),
// TextColumn::make('konto_first_name')->label('Vorname'),
TextColumn::make('konto_option.name')
->badge()
->label('Plan')
->description(fn ($record): string => $record->konto_option->payment_plan->name),
TextColumn::make('konto_company')->label('Firma'),
IconColumn::make('konto_agb_akzeptiert')
->label('AGB')
->boolean()
->trueIcon(Heroicon::OutlinedCheckBadge)
->falseIcon(Heroicon::OutlinedXMark),
PhoneColumn::make('konto_phone')
->label('Telefon')
->displayFormat(PhoneInputNumberType::INTERNATIONAL),
TextColumn::make('konto_email')
->copyable()
->copyMessage('E-Mail wurde kopiert')
->copyMessageDuration(1500)
->label('E-mail'),
])
->recordActions([
EditAction::make(),
]);
}
}