Use full pages for task collections
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (push) Has been cancelled
tests / ui (push) Has been cancelled

This commit is contained in:
Codex Agent
2026-01-19 21:26:30 +01:00
parent 7030e8b5b9
commit 802e360c8e
5 changed files with 71 additions and 30 deletions

View File

@@ -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);
}
}

View File

@@ -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);
}
}

View File

@@ -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(),
];
}
}

View File

@@ -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
)),
];
}
}

View File

@@ -2,7 +2,9 @@
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\WeeklyOpsCluster;
use App\Models\EventType;
@@ -263,7 +265,9 @@ class TaskCollectionResource extends Resource
public static function getPages(): array
{
return [
'index' => ManageTaskCollections::route('/'),
'index' => ListTaskCollections::route('/'),
'create' => CreateTaskCollection::route('/create'),
'edit' => EditTaskCollection::route('/{record}/edit'),
];
}