z-lab-cockpit/app/Filament/Resources/Courses/CourseResource.php

66 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\Pages\ViewCourse;
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;
class CourseResource extends Resource
{
protected static ?string $model = Course::class;
protected static string|BackedEnum|null $navigationIcon = Heroicon::ArchiveBox;
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'),
'view' => ViewCourse::route('/{record}'),
'edit' => EditCourse::route('/{record}/edit'),
];
}
}