z-lab-cockpit/app/Filament/Resources/Courses/CourseResource.php
2026-06-02 17:11:39 +00:00

71 lines
1.9 KiB
PHP

<?php
namespace App\Filament\Resources\Courses;
use App\Filament\Resources\Courses\Pages\CreateCourse;
use App\Filament\Resources\Courses\Pages\EditCourse;
use App\Filament\Resources\Courses\Pages\ListCourses;
use App\Filament\Resources\Courses\RelationManagers\KidsRelationManager;
use App\Filament\Resources\Courses\Schemas\CourseForm;
use App\Filament\Resources\Courses\Schemas\CourseInfolist;
use App\Filament\Resources\Courses\Tables\CoursesTable;
use App\Models\Course;
use BackedEnum;
use Filament\Resources\Resource;
use Filament\Schemas\Schema;
use Filament\Support\Icons\Heroicon;
use Filament\Tables\Table;
use UnitEnum;
class CourseResource extends Resource
{
protected static ?string $model = Course::class;
protected static string|BackedEnum|null $navigationIcon = Heroicon::ArchiveBox;
protected static string|UnitEnum|null $navigationGroup = 'Verwaltung';
protected static ?string $recordTitleAttribute = 'name';
protected static ?string $pluralLabel = 'Kurse';
protected static ?string $label = 'Kurs';
protected static ?string $navigationLabel = 'Kurse';
protected static ?string $pluralModelLabel = 'Kurse';
protected static ?string $modelLabel = 'Kurs';
public static function form(Schema $schema): Schema
{
return CourseForm::configure($schema);
}
public static function infolist(Schema $schema): Schema
{
return CourseInfolist::configure($schema);
}
public static function table(Table $table): Table
{
return CoursesTable::configure($table);
}
public static function getRelations(): array
{
return [
KidsRelationManager::class,
];
}
public static function getPages(): array
{
return [
'index' => ListCourses::route('/'),
'create' => CreateCourse::route('/create'),
'edit' => EditCourse::route('/{record}/edit'),
];
}
}