feat: Implement authorization checks for create, edit, and delete actions on StudyGroup and CourseSchedule pages.

This commit is contained in:
Yoga Pangestu 2026-03-12 09:29:37 +07:00
parent 43bafef4cd
commit bcdbbacf5c
2 changed files with 12 additions and 6 deletions

View File

@ -76,18 +76,21 @@ public function form(Schema $schema): Schema
protected function getHeaderActions(): array
{
return [
CreateScheduleAction::make(),
CreateScheduleAction::make()
->visible(fn () => auth()->user()->can('Create:CourseSchedule')),
];
}
protected function editScheduleAction(): Action
{
return EditScheduleAction::make();
return EditScheduleAction::make()
->visible(fn () => auth()->user()->can('Update:CourseSchedule'));
}
protected function deleteScheduleAction(): Action
{
return DeleteScheduleAction::make();
return DeleteScheduleAction::make()
->visible(fn () => auth()->user()->can('Delete:CourseSchedule'));
}
public function getSchedules(): Collection

View File

@ -84,18 +84,21 @@ public function form(Schema $schema): Schema
protected function getHeaderActions(): array
{
return [
CreateStudyGroupAction::make(),
CreateStudyGroupAction::make()
->visible(fn () => auth()->user()->can('Create:StudyGroup')),
];
}
protected function editStudyGroupAction(): Action
{
return EditStudyGroupAction::make();
return EditStudyGroupAction::make()
->visible(fn () => auth()->user()->can('Update:StudyGroup'));
}
protected function deleteStudyGroupAction(): Action
{
return DeleteStudyGroupAction::make();
return DeleteStudyGroupAction::make()
->visible(fn () => auth()->user()->can('Delete:StudyGroup'));
}
public function getStudyGroups(): Collection