Skip to content

Commit 97b5810

Browse files
feat [lar-159] format status column in article
1 parent 0b8de84 commit 97b5810

File tree

1 file changed

+26
-5
lines changed

1 file changed

+26
-5
lines changed

app/Filament/Resources/ArticleResource.php

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,8 @@
77
use App\Actions\Article\ApprovedArticleAction;
88
use App\Filament\Resources\ArticleResource\Pages;
99
use App\Models\Article;
10+
use Awcodes\FilamentBadgeableColumn\Components\Badge;
11+
use Awcodes\FilamentBadgeableColumn\Components\BadgeableColumn;
1012
use Filament\Resources\Resource;
1113
use Filament\Support\Enums\MaxWidth;
1214
use Filament\Tables;
@@ -67,11 +69,30 @@ public static function table(Table $table): Table
6769
->label('Soumission')
6870
->placeholder('N/A')
6971
->date(),
70-
Tables\Columns\TextColumn::make('approved_at')
71-
->label('Approbation')
72-
->placeholder('N/A')
73-
->date()
74-
->toggleable(),
72+
BadgeableColumn::make('status')
73+
->label('Status')
74+
->getStateUsing(function ($record) {
75+
if ($record->approved_at) {
76+
return [
77+
'label' => 'Approuvé',
78+
'date' => $record->approved_at->format('d/m/Y H:i'),
79+
];
80+
}
81+
if ($record->declined_at) {
82+
return [
83+
'label' => 'Décliné',
84+
'date' => $record->declined_at->format('d/m/Y H:i'),
85+
];
86+
}
87+
})
88+
->formatStateUsing(function ($state) {
89+
if (is_array($state)) {
90+
return "{$state['label']} - {$state['date']}";
91+
}
92+
93+
return $state;
94+
})
95+
->sortable(),
7596
Tables\Columns\TextColumn::make('declined_at')
7697
->label('Décliner')
7798
->placeholder('N/A')

0 commit comments

Comments
 (0)