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 protected function getHeaderActions(): array
{ {
return [ return [
CreateScheduleAction::make(), CreateScheduleAction::make()
->visible(fn () => auth()->user()->can('Create:CourseSchedule')),
]; ];
} }
protected function editScheduleAction(): Action protected function editScheduleAction(): Action
{ {
return EditScheduleAction::make(); return EditScheduleAction::make()
->visible(fn () => auth()->user()->can('Update:CourseSchedule'));
} }
protected function deleteScheduleAction(): Action protected function deleteScheduleAction(): Action
{ {
return DeleteScheduleAction::make(); return DeleteScheduleAction::make()
->visible(fn () => auth()->user()->can('Delete:CourseSchedule'));
} }
public function getSchedules(): Collection public function getSchedules(): Collection

View File

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