Files

45 lines
1.7 KiB
PHP
Raw Permalink Normal View History

2025-10-22 17:09:48 +02:00
<?php
namespace App\Filament\Resources\MemberGroups\Schemas;
use App\Models\MemberGroup;
use Filament\Actions\Action;
use Filament\Forms\Components\Textarea;
2025-10-22 17:09:48 +02:00
use Filament\Forms\Components\TextInput;
use Filament\Schemas\Components\Section;
2025-10-22 17:09:48 +02:00
use Filament\Schemas\Schema;
class MemberGroupForm
{
public static function configure(Schema $schema): Schema
{
return $schema
->components([
Section::make(fn (?MemberGroup $record) => $record?->name ?? MemberGroup::getAttributeLabel('name'))
->headerActions([
Action::make('view-members')
->icon('heroicon-o-users')
->label(MemberGroup::getAttributeLabel('view_members'))
->action(function (MemberGroup $record) {
return redirect()->route('filament.admin.resources.members.index', [ 'filters[group][name][values][0]' => $record->id]);
})
->visible(fn(?MemberGroup $record) => $record !== null)
])
->schema([
TextInput::make('name')
->label(MemberGroup::getAttributeLabel('name'))
->required(),
TextInput::make('identifier')
->label(MemberGroup::getAttributeLabel('identifier'))
->disabledOn('edit')
->required(),
Textarea::make('description')
->label(MemberGroup::getAttributeLabel('description'))
->default(null),
]),
2025-10-22 17:09:48 +02:00
]);
}
}