Use full pages for task collections
This commit is contained in:
@@ -0,0 +1,16 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\Pages;
|
||||||
|
|
||||||
|
use App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\TaskCollectionResource;
|
||||||
|
use App\Filament\Resources\Pages\AuditedCreateRecord;
|
||||||
|
|
||||||
|
class CreateTaskCollection extends AuditedCreateRecord
|
||||||
|
{
|
||||||
|
protected static string $resource = TaskCollectionResource::class;
|
||||||
|
|
||||||
|
protected function mutateFormDataBeforeCreate(array $data): array
|
||||||
|
{
|
||||||
|
return TaskCollectionResource::normalizeData($data);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\Pages;
|
||||||
|
|
||||||
|
use App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\TaskCollectionResource;
|
||||||
|
use App\Filament\Resources\Pages\AuditedEditRecord;
|
||||||
|
use App\Services\Audit\SuperAdminAuditLogger;
|
||||||
|
use Filament\Actions;
|
||||||
|
|
||||||
|
class EditTaskCollection extends AuditedEditRecord
|
||||||
|
{
|
||||||
|
protected static string $resource = TaskCollectionResource::class;
|
||||||
|
|
||||||
|
protected function getHeaderActions(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
Actions\DeleteAction::make()
|
||||||
|
->after(fn ($record) => app(SuperAdminAuditLogger::class)->recordModelMutation(
|
||||||
|
'deleted',
|
||||||
|
$record,
|
||||||
|
source: static::class
|
||||||
|
)),
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
||||||
|
protected function mutateFormDataBeforeSave(array $data): array
|
||||||
|
{
|
||||||
|
return TaskCollectionResource::normalizeData($data, $this->record);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\Pages;
|
||||||
|
|
||||||
|
use App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\TaskCollectionResource;
|
||||||
|
use Filament\Actions;
|
||||||
|
use Filament\Resources\Pages\ListRecords;
|
||||||
|
|
||||||
|
class ListTaskCollections extends ListRecords
|
||||||
|
{
|
||||||
|
protected static string $resource = TaskCollectionResource::class;
|
||||||
|
|
||||||
|
protected function getHeaderActions(): array
|
||||||
|
{
|
||||||
|
return [
|
||||||
|
Actions\CreateAction::make(),
|
||||||
|
];
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,28 +0,0 @@
|
|||||||
<?php
|
|
||||||
|
|
||||||
namespace App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\Pages;
|
|
||||||
|
|
||||||
use App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\TaskCollectionResource;
|
|
||||||
use App\Models\TaskCollection;
|
|
||||||
use App\Services\Audit\SuperAdminAuditLogger;
|
|
||||||
use Filament\Actions;
|
|
||||||
use Filament\Resources\Pages\ManageRecords;
|
|
||||||
|
|
||||||
class ManageTaskCollections extends ManageRecords
|
|
||||||
{
|
|
||||||
protected static string $resource = TaskCollectionResource::class;
|
|
||||||
|
|
||||||
protected function getHeaderActions(): array
|
|
||||||
{
|
|
||||||
return [
|
|
||||||
Actions\CreateAction::make()
|
|
||||||
->mutateDataUsing(fn (array $data): array => TaskCollectionResource::normalizeData($data))
|
|
||||||
->after(fn (array $data, TaskCollection $record) => app(SuperAdminAuditLogger::class)->recordModelMutation(
|
|
||||||
'created',
|
|
||||||
$record,
|
|
||||||
SuperAdminAuditLogger::fieldsMetadata($data),
|
|
||||||
static::class
|
|
||||||
)),
|
|
||||||
];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -2,7 +2,9 @@
|
|||||||
|
|
||||||
namespace App\Filament\Clusters\WeeklyOps\Resources\TaskCollections;
|
namespace App\Filament\Clusters\WeeklyOps\Resources\TaskCollections;
|
||||||
|
|
||||||
use App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\Pages\ManageTaskCollections;
|
use App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\Pages\CreateTaskCollection;
|
||||||
|
use App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\Pages\EditTaskCollection;
|
||||||
|
use App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\Pages\ListTaskCollections;
|
||||||
use App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\RelationManagers\TasksRelationManager;
|
use App\Filament\Clusters\WeeklyOps\Resources\TaskCollections\RelationManagers\TasksRelationManager;
|
||||||
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
|
use App\Filament\Clusters\WeeklyOps\WeeklyOpsCluster;
|
||||||
use App\Models\EventType;
|
use App\Models\EventType;
|
||||||
@@ -263,7 +265,9 @@ class TaskCollectionResource extends Resource
|
|||||||
public static function getPages(): array
|
public static function getPages(): array
|
||||||
{
|
{
|
||||||
return [
|
return [
|
||||||
'index' => ManageTaskCollections::route('/'),
|
'index' => ListTaskCollections::route('/'),
|
||||||
|
'create' => CreateTaskCollection::route('/create'),
|
||||||
|
'edit' => EditTaskCollection::route('/{record}/edit'),
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user